예제 #1
0
        public Pane()
        {
            InitializeComponent();
            cellularAutomata = new CellularAutomata(tileNumber);
            ThreadStart childref = new ThreadStart(RunAutomata);

            automata = new Thread(childref);
            automata.IsBackground = true;
        }
예제 #2
0
        static void Main(string[] args)
        {
            var generations = int.Parse(args[0]);
            var width       = int.Parse(args[1]);
            var ruleNum     = int.Parse(args[2]);
            var seedIndex   = int.Parse(args[3]);
            var seed        = Enumerable.Repeat(0, width).ToArray();

            seed[seedIndex] = 1;
            Console.WriteLine("Generating {0} generations {1} wide from rule {2} with seed {3}", generations, width, ruleNum, seedIndex);
            var cellularAutomata = new CellularAutomata(ruleNum, seed);

            PrintGeneration(seed);
            for (var generation = 0; generation < generations; generation++)
            {
                PrintGeneration(cellularAutomata.Next());
            }
        }
예제 #3
0
        static void Main(string[] args)
        {
            CellularAutomata cellularAutomata = new CellularAutomata();

            cellularAutomata.Construct(640, 480, 5, 5, "Cellular Automata");
        }