Exemple #1
0
        //update the suggest depth based on current chose fractal
        private void loadSuggestedDepth()
        {
            EFractalType currentSelectedFractal = (EFractalType)comboBoxFractal.SelectedItem;
            int          suggestedDepth         = 0;

            //pick the corresponding value to the selected item in the combo box
            switch (currentSelectedFractal)
            {
            case EFractalType.Tree:
                suggestedDepth = Constants.SUGGESTED_DEPTH_TREE;
                break;

            case EFractalType.KochSnowflake:
                suggestedDepth = Constants.SUGGESTED_DEPTH_KOCHFLAKE;
                break;

            case EFractalType.SierpinskiGasket:
                suggestedDepth = Constants.SUGGESTED_DEPTH_SIERGASKET;
                break;

            case EFractalType.Vicsek:
                suggestedDepth = Constants.SUGGESTED_DEPTH_VICSEK;
                break;

            case EFractalType.AltVicsek:
                suggestedDepth = Constants.SUGGESTED_DEPTH_ALT_VICSEK;
                break;

            case EFractalType.Dragon:
                suggestedDepth = Constants.SUGGESTED_DEPTH_DRAGON;
                break;
            }
            //change the depth value automatically
            numericUpDownDepth.Value = suggestedDepth;
        }
Exemple #2
0
        //generate the chosen fractal object
        public Fractal GenerateFractal(EFractalType fractalType)
        {
            Fractal newFractal = null;

            //choose fractal based on enum input
            switch (fractalType)
            {
            case EFractalType.Tree:
                newFractal = new Tree();
                break;

            case EFractalType.KochSnowflake:
                newFractal = new KochSnowflake();
                break;

            case EFractalType.SierpinskiGasket:
                newFractal = new SierpinskiGasket();
                break;

            case EFractalType.Vicsek:
                newFractal = new Vicsek();
                break;

            case EFractalType.AltVicsek:
                newFractal = new AltVicsek();
                break;

            case EFractalType.Dragon:
                newFractal = new Dragon();
                break;
            }
            //give it back
            return(newFractal);
        }
Exemple #3
0
 public static void ReadFractalType(XmlReader reader, string name, ref EFractalType fractalType)
 {
     string attr = reader.GetAttribute(name);
     if (attr != null)
     {
         fractalType = (EFractalType)Enum.Parse(typeof(EFractalType), attr);
     }
 }
Exemple #4
0
 public KIFSIteration(EFractalType type, Vector3 preRotation, Vector3 PostRotation, double scale, Vector3 offset, int repeats)
 {
     _FractalType  = type;
     _PreRotation  = preRotation;
     _PostRotation = PostRotation;
     _Scale        = scale;
     _Offset       = offset;
     _Repeats      = repeats;
 }
Exemple #5
0
        public static void ReadFractalType(XmlReader reader, string name, ref EFractalType fractalType)
        {
            string attr = reader.GetAttribute(name);

            if (attr != null)
            {
                fractalType = (EFractalType)Enum.Parse(typeof(EFractalType), attr);
            }
        }
Exemple #6
0
 public KIFSIteration(EFractalType type, Vector3 preRotation, Vector3 PostRotation, double scale, Vector3 offset, int repeats)
 {
     _FractalType = type;
     _PreRotation = preRotation;
     _PostRotation = PostRotation;
     _Scale = scale;
     _Offset = offset;
     _Repeats = repeats;
 }
Exemple #7
0
        //the Go button
        private void buttonGo_Click(object sender, EventArgs e)
        {
            this.Cursor = Cursors.WaitCursor;
            clearCanvas();
            //get values from controls
            EFractalType chosenFractal = (EFractalType)comboBoxFractal.SelectedItem;
            int          depth         = (int)numericUpDownDepth.Value;
            //create controller with form values
            FractalDisplayController fracController = new FractalDisplayController(mainCanvas, chosenFractal);

            fracController.RunFractal(depth);
            this.Cursor = Cursors.Default;
        }
 private void SetName(EFractalType fractalType)
 {
     switch (fractalType)
     {
         case EFractalType.Tetra:
             label5.Content = "T E T R A H E D R O N";
             break;
         case EFractalType.Menger:
             label5.Content = "M E N G E R";
             break;
         case EFractalType.Cube:
             label5.Content = "C U B E";
             break;
     }
 }
        private void SetName(EFractalType fractalType)
        {
            switch (fractalType)
            {
            case EFractalType.Tetra:
                label5.Content = "T E T R A H E D R O N";
                break;

            case EFractalType.Menger:
                label5.Content = "M E N G E R";
                break;

            case EFractalType.Cube:
                label5.Content = "C U B E";
                break;
            }
        }
Exemple #10
0
 public FractalDisplayController(Graphics inMainCanvas, EFractalType chosenFractal)
 {
     mainCanvas     = inMainCanvas;
     fracFac        = new FractalFactory();
     currentFractal = fracFac.GenerateFractal(chosenFractal);
 }