//reakcia na skoncenie simulacie private void skoncenieSimulacie_Click(object sender, EventArgs e) { if (!HodnotyStavuSimulacie.ZistiBolaUkoncena()) { HodnotyStavuSimulacie.NastavBolaUkoncena(pocetMravcovTypu1Nastavenia, pocetMravcovTypu2Nastavenia, pocetMravcovTypu3Nastavenia, pocetMravcovTypu4Nastavenia, pocetSkalNastavenia, mnozstvoZaciatocnejPotravyNastavenia, minimalneMnozstvoPotravyNastavenia, casLabelVystup, fazaLabelVystup); InicializaciaNastaveniHodnot(); HodnotyNaVypisovanie.VypisUdajeZakladne(dobaSimulacia, pocetMravcovTypu1TerazSimulacia, pocetMravcovTypu1CelkovoSimulacia, pocetMravcovTypu2TerazSimulacia, pocetMravcovTypu2CelkovoSimulacia, pocetMravcovTypu3TerazSimulacia, pocetMravcovTypu3CelkovoSimulacia, pocetMravcovTypu4TerazSimulacia, pocetMravcovTypu4CelkovoSimulacia, mnoztvoPotravyTerazSimulacia, mnozstvoPotravyCelkovoSimulacia); GrafickyVystup.VykresliOknoBezSimulacie(vystup); zastaveniePokracovanieSimulacie.Text = "Zastavenie Simulácie."; HodnotyStavuZobrazovaniaSimulacie.NastavZobrazovanieSimulacie(false); zastavenieSpustenieZobrazovaniaButton.Text = "Zastavenie zobrazovania"; } else { MessageBox.Show("Nema zmysel ukoncovat simulaciu"); } }
//spustenie vykreslovania private void backgroundWorker1_ProgressChanged(object sender, ProgressChangedEventArgs e) { TabPage tabPage = Simulacia.TabPages[1]; StatickeHodnoty.NastavMravenisko(StatickeHodnoty.ZistiBehSimulacieSimulacia().ZistiMravenisko()); if (HodnotyStavuZobrazovaniaSimulacie.ZistiZobrazovanieSimulacie()) { GrafickyVystup.VykresliMraveniskoUvod(StatickeHodnoty.ZistiMravenisko(), tabPage); VypisFazeMraveniska.VypisFazeMraveniskaUvod(StatickeHodnoty.ZistiMravenisko(), casLabelVystup, fazaLabelVystup); } if (StatickeHodnoty.ZistiMravenisko().ZistiPocetVsetkychMravcov() == 0 && StatickeHodnoty.ZistiMravenisko().ZistiFazaMraveniska() == FazaMraveniska.poKonciKroku) { InicializaciaNastaveniHodnot(); HodnotyStavuSimulacie.NastavBolaUkoncena(pocetMravcovTypu1Nastavenia, pocetMravcovTypu2Nastavenia, pocetMravcovTypu3Nastavenia, pocetMravcovTypu4Nastavenia, pocetSkalNastavenia, mnozstvoZaciatocnejPotravyNastavenia, minimalneMnozstvoPotravyNastavenia, casLabelVystup, fazaLabelVystup); HodnotyNaVypisovanie.VypisUdajeZakladne(dobaSimulacia, pocetMravcovTypu1TerazSimulacia, pocetMravcovTypu1CelkovoSimulacia, pocetMravcovTypu2TerazSimulacia, pocetMravcovTypu2CelkovoSimulacia, pocetMravcovTypu3TerazSimulacia, pocetMravcovTypu3CelkovoSimulacia, pocetMravcovTypu4TerazSimulacia, pocetMravcovTypu4CelkovoSimulacia, mnoztvoPotravyTerazSimulacia, mnozstvoPotravyCelkovoSimulacia); GrafickyVystup.VykresliOknoBezSimulacie(tabPage); HodnotyStavuZobrazovaniaSimulacie.NastavZobrazovanieSimulacie(true); zastavenieSpustenieZobrazovaniaButton.Text = "Zastavenie zobrazovania"; } StatickeHodnoty.ZistiAutoResetEvent().Set(); }
//nastavi prvotne hodnoty simulacie private static void NastavHodnotySimulacie() { ZadaneHodnoty.NastavPocetMravcovTypu1(NacitaneHodnoty.ZistiPocetMravcovTypu1()); ZadaneHodnoty.NastavPocetMravcovTypu2(NacitaneHodnoty.ZistiPocetMravcovTypu2()); ZadaneHodnoty.NastavPocetMravcovTypu3(NacitaneHodnoty.ZistiPocetMravcovTypu3()); ZadaneHodnoty.NastavPocetMravcovTypu4(NacitaneHodnoty.ZistiPocetMravcovTypu4()); ZadaneHodnoty.NastavMinimalneMnozstvoPotravy(NacitaneHodnoty.ZistiMnozstvoMinimalnejPotravy()); ZadaneHodnoty.NastavMnozstvoPotravy(NacitaneHodnoty.ZistiMnozstvoStartovnejPotavy()); ZadaneHodnoty.NastavPocetSkal(NacitaneHodnoty.ZistiPocetSkal()); ZadaneHodnoty.NastavRozmerMraveniska(NacitaneHodnoty.ZistiRozmerMraveniska()); Konstanty.NastavNasobokDobyPrestavky(HodnotyStavuSimulacie.ZistiRychlostSimulacie()); GrafickyVystup.Inicializacia(ZadaneHodnoty.ZistiRozmerMraveniska()); }