示例#1
0
 public void UstawNoweSchematySi(DaneORuchu baza, DaneORuchu bazaKontrolna, SterowanieSi si, Czas czas)
 {
     foreach (Skrzyzowanie skrzyzowanie in skrzyzowania)
     {
         if (skrzyzowanie.CzySi() && skrzyzowanie.PodajKiedyOstatniaZmianaSwiatel() >= SterowanieSi.CO_ILE_ZMIANA_SWIATEL)
         {
             skrzyzowanie.UstawSchematSi(si.GenSchemat(skrzyzowanie.PodajId(), this, baza, bazaKontrolna, czas));
         }
     }
 }
示例#2
0
        Boolean trybKontrolny;              // true - 2 symulacje, false - 1 symulaja

        public Emulator()
        {
            czas                = new Czas();
            daneORuchu          = new DaneORuchu(czas);
            daneORuchuKontrolne = new DaneORuchu(czas);
            mapa                = new Mapa();
            si = new SterowanieSi();

            trybKontrolny = true;
        }
示例#3
0
        // zaladowanie probnych ustawien emulatora
        public void EmulatorTestowy()
        {
            mapa.MapaTestowa();

            czas                = new Czas();
            daneORuchu          = new DaneORuchu(czas);
            daneORuchuKontrolne = new DaneORuchu(czas);

            symulacja = new Symulacja(czas, daneORuchu, daneORuchuKontrolne, mapa, si);
            kontrolna = new Symulacja(czas, daneORuchuKontrolne, daneORuchuKontrolne, mapa);

            mapa.PrzekazListePolaczenDoBazy(daneORuchu);
            mapa.PrzekazListePolaczenDoBazy(daneORuchuKontrolne);
            si = new SterowanieSi();
        }
示例#4
0
        public void ZaladujMapeZPliku(string plik)
        {
            using (StreamReader r = new StreamReader(plik))
            {
                string json = r.ReadToEnd();
                mapa = JsonConvert.DeserializeObject <Mapa>(json);
            }

            czas                = new Czas();
            daneORuchu          = new DaneORuchu(czas);
            daneORuchuKontrolne = new DaneORuchu(czas);

            symulacja = new Symulacja(czas, daneORuchu, daneORuchuKontrolne, mapa, si);
            kontrolna = new Symulacja(czas, daneORuchuKontrolne, daneORuchuKontrolne, mapa);

            mapa.PrzekazListePolaczenDoBazy(daneORuchu);
            mapa.PrzekazListePolaczenDoBazy(daneORuchuKontrolne);
            si = new SterowanieSi();
        }
示例#5
0
        public Symulacja(Czas czas, DaneORuchu bazaDanych, DaneORuchu bazaDanychKontrolna, Mapa mapa, SterowanieSi si = null)
        {
            this.mapa                = new Mapa(mapa);
            this.pojazdy             = new List <Pojazd>();
            this.czas                = czas;
            this.bazaDanych          = bazaDanych;
            this.bazaDanychKontrolna = bazaDanychKontrolna;

            if (si == null)
            {
                this.czyKontrolne = true;
                this.si           = null;
            }
            else
            {
                this.czyKontrolne = false;
                this.si           = si;
            }
        }
示例#6
0
 public void UstawSi(int id, DaneORuchu baza, DaneORuchu bazaKontrolna, SterowanieSi si, Czas czas)
 {
     skrzyzowania.First(s => s.PodajId() == id).UstawSchematSi(si.GenSchemat(id, this, baza, bazaKontrolna, czas));
 }