private static void RegisterFractalAlgorithms(IAlgorithmRegistry registry) { registry.RegisterFractalAlgorithm(new MandelbrotAlgorithm()); registry.RegisterFractalAlgorithm(new JuliaAlgorithm()); registry.RegisterFractalAlgorithm(new TreeAlgorithm(90, 6)); registry.RegisterFractalAlgorithm(new SierpinskiTriangleAlgorithm(30)); }
public ConsoleRenderer( IAlgorithmRegistry algorithmRegistry, IShaderRegistry shaderRegistry, IFractalContextFactory contextFactory, IScreen screen) { this.context = contextFactory.Create(screen); // TODO: make configurable this.context.CurrentAlgorithm = algorithmRegistry.GetAll().First(r => r.ToString().StartsWith("Mandel")); this.context.CurrentShader = shaderRegistry.GetAll().First(); this.context.MaxIterations = 1500; }
public Form1( IAlgorithmRegistry algorithmRegistry, IShaderRegistry shaderRegistry, IFractalContextFactory contextFactory, IUndoStack undoStack, IParameterActionFactory parameterActionFactory) { this.InitializeComponent(); this.algorithmRegistry = algorithmRegistry; this.shaderRegistry = shaderRegistry; this.undoStack = undoStack; this.parameterActionFactory = parameterActionFactory; this.undoStack.StackChanged += this.OnUndoSackChanged; this.context = contextFactory.Create(this.Screen); this.context.StatusChanged += this.OnStatusChanged; this.InitializeOptions(); }