예제 #1
0
 private static void Add(IFractalCreator fractal)
 {
     if (fractal == null)
     {
         throw new ArgumentNullException("fractal");
     }
     if (_dictionary.ContainsKey(fractal.Name))
     {
         throw new ArgumentException("_dictionary.ContainsKey(fractal.Name)");
     }
     _dictionary.Add(fractal.Name, fractal);
 }
        public ScreenConstructionParameters(Point location, String label, IFractalCreator fractalCreator)
        {
            this.Location = location;
            this.Label = label;
            this.Connections = new Dictionary<Direction, Connection>();
            this.FractalCreator = fractalCreator;
            this.PostProcessor = new ScreenPostProcessorEmpty();
            this.ObjectPopulator = new ObjectPopulatorEmpty();

            foreach (Direction d in Direction.All)
            {
                this.Connections[d] = Connection.None;
            }
        }
 public void InitializeParams()
 {
     m_fractalCreator = Parameters.ParseFractalCreator("FractalCreator");
     InitializeMyParams();
 }
예제 #4
0
 protected void CalculateFractals(Point globalScreenCoord, IFractalCreator fca)
 {
     fca.CreateFractals(ScreenConstructionInfos[globalScreenCoord]);
 }