Пример #1
0
 /// <summary>
 /// Kopírovací konštruktor
 /// </summary>
 /// <param name="paPredloha"></param>
 /// <param name="paSmer"></param>
 public Vlak(PrototypDp paPredloha, SmerZast paSmer)
     : base(paPredloha)
 {
     if (paSmer == SmerZast.horizontalny)
     {
         NastavObrazok(Resources.vlakVodorvoneVpravo, "vlakVodorvoneVpravo");
     }
     else
     {
         NastavObrazok(Resources.vlakZvisleDole, "vlakZvisleDole");
     }
     aAktualnyFrame = 0;
     JeVCieli       = true;
     Skryte         = false;
     Druh           = DruhVozidla.kolajove;
     aTrasa         = new List <Hrana>();
 }
Пример #2
0
        public Auto(PrototypDp paPredloha, SmerZast paSmer)
            : base(paPredloha)
	    {
            if (paSmer == SmerZast.horizontalny)
            {
                NastavObrazok(Resources.vozidloVpravo, "vozidloVpravo");

            }
            else
            {
                NastavObrazok(Resources.vozidloHore, "vozidloHore");
            }
            aAktualnyFrame = 0;
            JeVCieli = true;
            Skryte = false;
            Druh = DruhVozidla.cestne;
            aTrasa = new List<Hrana>();
	    }
        public ZeleznicnaStanica(Poloha paPoloha, SmerZast paSmerZast)
        {
            Poloha = paPoloha;
            SmerZastavky = paSmerZast;
            aMozneStroje = new List<PrototypDp>();

            if (SmerZastavky == SmerZast.horizontalny)
            {
                NastavObrazok(Resources.zelStanicaVodor, "zelStanicaVodor");
            }
            else
            {
                NastavObrazok(Resources.zelStanicaZv, "zelStanicaZv");
            }

            ZburatelneAutomaticky = false;
            NakladyNaZburanie = 200;
            Cena = 650;
            Predlohy();
        }
Пример #4
0
        public Zastavka(Poloha paPoloha, SmerZast paSmerZast)
        {
            Poloha = paPoloha;
            SmerZast = paSmerZast;
            aMozneStroje = new List<PrototypDp>();

            if (SmerZast == SmerZast.horizontalny)
            {
                NastavObrazok(Resources.cestaZastavkaVodor, "cestaZastavkaVodor");
            }
            else 
            {
                NastavObrazok(Resources.cestaZastavkaZvy, "cestaZastavkaZvy");
            }

            ZburatelneAutomaticky = false;
            NakladyNaZburanie = 200;
            Cena = 500;
            Predlohy();

		}
Пример #5
0
        /// <summary>
        /// proces vytvαrania grafu
        /// </summary>
        private void VytvorGraf(int paRiadok, int paStlpec) 
        {
            Policko aktualnePolicko = aMatica[paRiadok, paStlpec];
            Policko susednePolicko;
            if (aktualnePolicko.Zastavane is Cesta)
            {
                SmerCesty smer = (aktualnePolicko.Zastavane as Cesta).Orientacia;

                switch (smer)
                {
                    case SmerCesty.vodorovne:

                        susednePolicko = aMatica[paRiadok, paStlpec - 1];

                        if (aktualnePolicko.Prostriedky())
                        {
                            KontrolaVrcholCestyVlavo(aktualnePolicko, susednePolicko);
                        }
                        else
                        {
                            KontrolaRovnaCestaLava(aktualnePolicko, susednePolicko);
                        }
                        break;

                    case SmerCesty.zvisle:

                        susednePolicko = aMatica[paRiadok - 1, paStlpec];
                        if (aktualnePolicko.Prostriedky())
                        {
                            KontrolaVrcholCestyHore(aktualnePolicko, susednePolicko);
                        }
                        else
                        {
                            KontrolaRovnaCestaHore(aktualnePolicko, susednePolicko);
                        }
                        break;

                    case SmerCesty.zakHoreVpravo:
                    case SmerCesty.odbZvysleVpravo:

                        susednePolicko = aMatica[paRiadok - 1, paStlpec];
                        KontrolaVrcholCestyHore(aktualnePolicko, susednePolicko);
                        break;

                    case SmerCesty.zakDoleVlavo:
                    case SmerCesty.odbVodorovneDole:

                        susednePolicko = aMatica[paRiadok, paStlpec - 1];
                        KontrolaVrcholCestyVlavo(aktualnePolicko, susednePolicko);
                        break;

                    case SmerCesty.krizovatka:
                    case SmerCesty.odbVodorovneHore:
                    case SmerCesty.odbZvysleVlavo:
                    case SmerCesty.zakHoreVlavo:

                        susednePolicko = aMatica[paRiadok - 1, paStlpec];
                        KontrolaVrcholCestyHore(aktualnePolicko, susednePolicko);
                        susednePolicko = aMatica[paRiadok, paStlpec - 1];
                        KontrolaVrcholCestyVlavo(aktualnePolicko, susednePolicko);
                        break;

                    case SmerCesty.zakDoleVpravo:
                        VyrvorVrchol(aktualnePolicko);
                        break;
                }
            }
            else if (aktualnePolicko.Zastavane is Zastavka)
            {
                SmerZast smerZ = (aktualnePolicko.Zastavane as Zastavka).SmerZast;
                if (smerZ == SmerZast.horizontalny)
                {
                    susednePolicko = aMatica[paRiadok, paStlpec - 1];
                    KontrolaVrcholCestyVlavo(aktualnePolicko, susednePolicko);
                }
                else
                {
                    susednePolicko = aMatica[paRiadok - 1, paStlpec];
                    KontrolaVrcholCestyHore(aktualnePolicko, susednePolicko);
                }

            }
            else if (aktualnePolicko.Zastavane is Zeleznica)
            {
                SmerInf smer = (aktualnePolicko.Zastavane as Zeleznica).Orientacia;
                if (smer == SmerInf.horizontalny)
                {
                    susednePolicko = aMatica[paRiadok, paStlpec - 1];

                    if (aktualnePolicko.Prostriedky())
                    {
                        KontrolaVrcholZeleznicaVlavo(aktualnePolicko, susednePolicko);
                    }
                    else
                    {
                        KontrolaZeleznicaRovnaVlavo(aktualnePolicko, susednePolicko);
                    }
                }
                else if (smer == SmerInf.vertikalny)
                {
                    susednePolicko = aMatica[paRiadok - 1, paStlpec];

                    if (aktualnePolicko.Prostriedky())
                    {
                        KontrolaVrcholZeleznicaHore(aktualnePolicko, susednePolicko);
                    }
                    else
                    {
                        KontrolaZeleznicaRovnaHore(aktualnePolicko, susednePolicko);
                    }
                }
                else if (smer == SmerInf.zatackaHoreVpravo)
                {
                    susednePolicko = aMatica[paRiadok - 1, paStlpec];

                    KontrolaVrcholZeleznicaHore(aktualnePolicko, susednePolicko);

                }
                else if (smer == SmerInf.zatackaHoreVlavo)
                {
                    susednePolicko = aMatica[paRiadok - 1, paStlpec];
                    KontrolaVrcholZeleznicaHore(aktualnePolicko, susednePolicko);

                    susednePolicko = aMatica[paRiadok, paStlpec - 1];
                    KontrolaVrcholZeleznicaVlavo(aktualnePolicko, susednePolicko);
                }
                else if (smer == SmerInf.zatackaDoleVlavo)
                {
                    susednePolicko = aMatica[paRiadok, paStlpec - 1];
                    KontrolaVrcholZeleznicaVlavo(aktualnePolicko, susednePolicko);
                }
                else if (smer == SmerInf.zatackaDoleVpravo)
                {
                    VyrvorVrchol(aktualnePolicko);
                }
            }
            else if (aktualnePolicko.Zastavane is ZeleznicnaStanica)
            {
                if ((aktualnePolicko.Zastavane as ZeleznicnaStanica).SmerZastavky == SmerZast.horizontalny)
                {
                    susednePolicko = aMatica[paRiadok, paStlpec - 1];
                    KontrolaVrcholZeleznicaVlavo(aktualnePolicko, susednePolicko);
                }
                else
                {
                    susednePolicko = aMatica[paRiadok - 1, paStlpec];
                    KontrolaVrcholZeleznicaHore(aktualnePolicko, susednePolicko);
                }
            }
        }