public FunctionsForm() { InitializeComponent(); control4AllViews = new Control4AllViews(this); control4FunctionsView = new Control4FunctionsView(this, control4AllViews); control4AllViews.control4FunctionsView = control4FunctionsView; DiagramsForm diagram = DiagramsForm.GetInvisible; control4FunctionsView.Control4DiagramView = new Control4DiagramView(diagram, control4AllViews); control4AllViews.Control4DiagramView = control4FunctionsView.Control4DiagramView; NonLineairSystemsForm m = NonLineairSystemsForm.GetInvisible; control4AllViews.Control4NonLineairSystems = m.Control4NonLineairSystems; DefineColorsForm defColorForm = DefineColorsForm.GetInvisible; defColorForm.CombinedControl = m.Control4NonLineairSystems; Params2Form(); this.Cursor = Cursors.Default; pictureBox.Cursor = Cursors.Cross; listBoxXValues.DrawItem += listBox_DrawItem; }
public Control4FunctionsView(IView f, Control4AllViews cav) : base(f, cav) { Constants constants = new Constants(); Constants.SettingsFromXML(); PlotForm = (IFunctionsView)f; // BSize = 2000; done in base!!!!!! CurrentFunction = new BaseFunction(); functionDrawer = new FunctionDrawer(PlotForm, this, createGIF); henonFunction = new HenonFunction(PlotForm); mandelbrotFunction = new MandelbrotFunction(PlotForm); CurrFunctionType = Constants.currentFunctionType; Constants.Initalising = false; PlotForm.Control4FunctionsView = this; PlotForm.Params2Form(); }
public Control4NonLineairSystems(ICombined f, Control4AllViews bf) : base(f, bf) { pictBoxSize = new Size(BSize, BSize); mandelbrotInsetBitmap = new DirectBitmap(pictBoxSize.Width / 5, pictBoxSize.Height / 5); mandelbrotPlotInset = new MandelbrotPlot(this, mandelbrotInsetBitmap); generalPlotters.Add(new UserdefinedPlot(this)); generalPlotters.Add(new MandelbrotPlot(this)); generalPlotters.Add(new JuliaPlot3(this, 0)); generalPlotters.Add(new JuliaRationalPlot(this, 0)); generalPlotters.Add(new HenonPlot(this)); generalPlotters.Add(new LambdaPlot(this)); generalPlotters.Add(new MultibrotReciprokePlot(this)); generalPlotters.Add(new MandelbarPlot(this)); fractalPlotter = generalPlotters[1]; for (int jp = 0; jp < JuliaPlot.Initials.Length; jp++) { JuliaPlot jpp = new JuliaPlot(this, jp); JuliaPlotters.Add(jpp); } MiraLinePlotter miraLinePlotter = new MiraLinePlotter(this); linePlotters.Add(miraLinePlotter); linePlotters.Add(new BolSpiralLinePlotter(this)); linePlotters.Add(new HenonLinePlotter(this)); linePlotters.Add(new DustLinePlotter(this)); linePlotters.Add(new CloudLinePlotter(this, CloudType.Type0)); linePlotters.Add(new CloudLinePlotter(this, CloudType.Type1)); // linePlotters.Add(new CloudLinePlotter(this, CloudType.Type2)); linePlotters.Add(new DendriteLinePlotter(this)); linePlotters.Add(new StarLinePlotter(this)); linePlotters.Add(new JuliaLinePlotter(this)); for (int i = 0; i < miraLinePlotter.Favorites.Length; i++) { MiraLinePlotter miraExample = (MiraLinePlotter)miraLinePlotter.Clone(new DirectBitmap(100, 100)); miraExample.ExampleNumber = i; miraLineplotExamples.Add(miraExample); } Xmin = (decimal)fractalPlotter.XMin; Xmax = (decimal)fractalPlotter.XMax; Ymin = (decimal)fractalPlotter.YMin; Ymax = (decimal)fractalPlotter.YMax; InterpolateColorPalette(); foreach (BasePlotter p in generalPlotters) { BasePlotter pp = p.Clone(new DirectBitmap(100, 100)); examplePlottersGeneral.Add(pp); } for (int jp = 0; jp < JuliaPlot.Initials.Length; jp++) { JuliaPlot jpp = new JuliaPlot(this, jp, new DirectBitmap(100, 100)); examplePlottersJulia.Add(jpp); } for (int mp = 0; mp < linePlotters.Count; mp++)// Enum.GetNames(typeof(SpecificLineType)).Length - 1; mp++) { { BasePlotter mpp = linePlotters[mp].Clone(new DirectBitmap(100, 100, true)); examplePlottersMira.Add(mpp); } }
public ImageControl(IView f, Control4AllViews cav) : this(f) { plotForm = f; control4AllViews = cav; BSize = Constants.UsedBSize; }
public Control4DiagramView(IView f, Control4AllViews cav) : base(f, cav) { diagramDrawer = new DiagramDrawer(PlotForm, control4AllViews.control4FunctionsView, false); diagramFunctionPlotter = new FunctionDrawerInset(PlotForm, Control4FunctionsView, false); }