Пример #1
0
        private void buttonDodaj_Click(object sender, RoutedEventArgs e)
        {
            Zlecenie z = new Zlecenie();

            z.dokad         = new GPS(double.Parse(textbox_dokad1.Text), double.Parse(textbox_dokad2.Text));
            z.skad          = new GPS(double.Parse(textbox_skad1.Text), double.Parse(textbox_skad2.Text));
            z.zadanaGodzina = double.Parse(textbox_godzina.Text);
            TS.DodajZlecenie(z);
            Label_funkcjaCelu.Content = TS.funkcjaCelu.ToString("F1");
        }
Пример #2
0
        //DEBUG

        public void DodajZlecenie(Zlecenie z)
        {
            // *********** Wstawiamy nowe zlecenie na pierwsza taksowke        *********

            Kierowca najmniejZajety = kierowcy.First();

            foreach (Kierowca k in kierowcy)
            {
                if (k.CzasPracy < najmniejZajety.CzasPracy)
                {
                    najmniejZajety = k;
                }
            }

            // przechodzimy do godziny, od której mozna wstawic nasze zadanie
            int indeks = 0;

            while ((indeks < najmniejZajety.ListaZlecen.Count()) && (najmniejZajety.ListaZlecen[indeks].Godzina < z.zadanaGodzina))
            {
                indeks++;
            }

            // wstawiamy zadanie
            z.Id = Zlecenie.iloscZlecen;
            Zlecenie.iloscZlecen++;
            Realizacja r = new Realizacja();

            r.Zlecenie      = z;
            r.Kierowca      = najmniejZajety;
            r.CzasPrzejazdu = GPS.CzasPrzejazdu(z.skad, z.dokad);
            najmniejZajety.ListaZlecen.Insert(indeks, r);
            PrzeliczCzasy(najmniejZajety);
            funkcjaCelu = FunkcjaCelu();

            // mozna by jeszcze tutaj sprawdzic ograniczenia

            Algorytm();
        }