示例#1
0
        private void button1_Click(object sender, EventArgs e)
        {
            int wymiar = (Int32)wymiaryNumeric.Value;

            labirynt = new Labirynt(wymiar);
            buttons  = new Button[wymiar * wymiar];
            int index = 0;

            for (int i = 0; i < wymiar; i++)
            {
                for (int j = 0; j < wymiar; j++)
                {
                    Button b  = new Button();
                    Button b2 = new Button();
                    b.Size           = new Size(30, 30);
                    b.Location       = new Point(i * 30, j * 30);
                    b.Text           = i + " " + j;
                    b.Tag            = labirynt.getWezel(i, j);
                    b.BackColor      = Color.White;
                    b.Click         += new EventHandler(buttonClick);
                    buttons[index++] = b;
                }
            }
            buttons[0].BackColor = Color.Green;
            wezelPoczatkowy      = labirynt.getWezel(0, 0);
            buttons[buttons.Length - 1].BackColor = Color.Red;
            wezelKoncowy = labirynt.getWezel(wymiar - 1, wymiar - 1);

            panel1.Controls.AddRange(buttons);
        }
示例#2
0
 public IDAStar(int startX, int startY, int koniecX, int koniecY, Labirynt labirynt, string wybranaHeurystyka, double kosztAkcji = 1.0, int opoznienie = 0)
 {
     this.opoznienie        = opoznienie;
     this.kosztAkcji        = kosztAkcji;
     heurystyka             = new Heurystyka();
     this.wybranaHeurystyka = wybranaHeurystyka;
     start                = labirynt.getWezel(startX, startY);
     koniec               = labirynt.getWezel(koniecX, koniecY);
     this.labirynt        = labirynt;
     wezlyOdwiedzone      = 0;
     iloscPowodzen        = 0;
     iloscNiepowodzen     = 0;
     lacznaDlugoscSciezki = 0;
     maxCzasWykonania     = 0;
 }