示例#1
0
        private void Test2_Click(object sender, RoutedEventArgs e)
        {
            string path = Directory.GetParent(Directory.GetCurrentDirectory()).Parent.FullName + @"\Resources\help.txt";

            string[] x   = File.ReadAllLines(path, Encoding.GetEncoding(1250));
            string   tmp = null;

            for (int i = 0; i < x.Length; i++)
            {
                tmp += x[i] + "\n";
            }
            MessageBox.Show(tmp);
        }
示例#2
0
        public MainWindow()
        {
            InitializeComponent();

            //dodanie czarnych punktow jako sktzyzowania
            int counter = 0;

            for (int i = 2; i < bitmap.Width - 2; i++)
            {
                for (int j = 2; j < bitmap.Height - 2; j++)
                {
                    if (Comparator(bitmap.GetPixel(i, j), System.Drawing.Color.Black) && Comparator(bitmap.GetPixel(i + 4, j + 4), System.Drawing.Color.Black))
                    {
                        Cross tmp = new Cross();
                        tmp.x     = i + 2;
                        tmp.y     = j + 2;
                        tmp.index = counter;
                        counter++;
                        crosses.Add(tmp);
                    }
                }
            }

            //powiększanie skrzyżowań
            for (int i = 0; i < crosses.Count; i++)
            {
                int X = crosses[i].x;
                int Y = crosses[i].y;
                coloring(bitmap, X, Y, System.Drawing.Color.Black, 5);
            }
            WriteableBitmap bitmapTmp = new WriteableBitmap(CreateBitmapSourceFromBitmap(bitmap));

            map.Source = bitmapTmp;

            //wczytanie z pliku
            string        line;
            List <string> lines = new List <string>();

            System.IO.StreamReader file = new System.IO.StreamReader(Directory.GetParent(Directory.GetCurrentDirectory()).Parent.FullName + @"\Resources\crosses.txt");
            while ((line = file.ReadLine()) != null)
            {
                if (line == "")
                {
                    continue;
                }
                lines.Add(line);
            }

            //zapisanie do crosses
            for (int i = 0; i < crosses.Count; i++)
            {
                string[] vs = lines[i].Split('\t');
                if (vs[0] != "")
                {
                    for (int j = 1; j < vs.Length; j++)
                    {
                        crosses[i].neighbours.Add(int.Parse(vs[j]));
                    }
                }
            }

            //sortowanie
            for (int i = 0; i < crosses.Count; i++)
            {
                crosses[i].neighbours.Sort();
            }

            //dodanie odleglosci i predkosci
            for (int i = 0; i < crosses.Count; i++)
            {
                for (int j = 0; j < crosses[i].neighbours.Count; j++)
                {
                    crosses[i].distance.Add(Math.Sqrt(Math.Pow((crosses[i].x - crosses[crosses[i].neighbours[j]].x), 2)
                                                      + Math.Pow((crosses[i].y - crosses[crosses[i].neighbours[j]].y), 2)));
                }
            }

            //utworzenie listy linii i stopow
            roads.Add(line00);
            roads.Add(line01);
            roads.Add(line02);
            roads.Add(line03);
            roads.Add(line04);
            roads.Add(line05);
            roads.Add(line06);
            roads.Add(line07);
            roads.Add(line08);
            roads.Add(line09);
            roads.Add(line10);
            roads.Add(line11);
            roads.Add(line12);
            roads.Add(line13);
            roads.Add(line14);
            roads.Add(line15);
            roads.Add(line16);
            roads.Add(line17);
            roads.Add(line18);
            roads.Add(line19);
            roads.Add(line20);
            roads.Add(line21);
            roads.Add(line22);
            roads.Add(line23);
            roads.Add(line24);
            roads.Add(line25);
            roads.Add(line26);
            roads.Add(line27);
            roads.Add(line28);
            roads.Add(line29);

            stops.Add(stop00);
            stops.Add(stop01);
            stops.Add(stop02);
            stops.Add(stop03);
            stops.Add(stop04);
            stops.Add(stop05);
            stops.Add(stop06);
            stops.Add(stop07);
            stops.Add(stop08);
            stops.Add(stop09);
            stops.Add(stop10);
            stops.Add(stop11);
            stops.Add(stop12);
            stops.Add(stop13);
            stops.Add(stop14);
            stops.Add(stop15);
            stops.Add(stop16);
            stops.Add(stop17);
            stops.Add(stop18);
            stops.Add(stop19);
            stops.Add(stop20);
            stops.Add(stop21);
            stops.Add(stop22);
            stops.Add(stop23);
            stops.Add(stop24);
            stops.Add(stop25);
            stops.Add(stop26);
            stops.Add(stop27);
            stops.Add(stop28);
            stops.Add(stop29);
            stops.Add(stop30);
            stops.Add(stop31);
            stops.Add(stop32);
            stops.Add(stop33);
            stops.Add(stop34);
            stops.Add(stop35);
            stops.Add(stop36);
            stops.Add(stop37);
            stops.Add(stop38);
            stops.Add(stop39);
            stops.Add(stop40);
            stops.Add(stop41);
            stops.Add(stop42);
            stops.Add(stop43);
            stops.Add(stop44);
            stops.Add(stop45);
            stops.Add(stop46);
            stops.Add(stop47);
            stops.Add(stop48);
            stops.Add(stop49);

            //osobny wątek do poruszania samochodem
            dispatcherTimer.Tick    += new EventHandler(dispatcherTimer_Tick);
            dispatcherTimer.Interval = new TimeSpan(0, 0, 0, 0, 10);

            //wyłączanie guzików
            test3.IsEnabled = false;
            test4.IsEnabled = false;
        }