/// <summary> /// Napojenie hrany na u existujϊcu hranu /// </summary> /// <param name="paPolicko">policko</param> /// <param name="paPolickoVedlajsie">susedne policko</param> private void PosunHranu(Policko paPolicko, Policko paPolickoVedlajsie) { Hrana hr = paPolickoVedlajsie.Hrana; paPolicko.Hrana = hr; paPolicko.Vrchol = null; hr.PridajPolicko(paPolicko); }
/// <summary> /// Vytvαranie hrany ak sa vedΎa nachαdza vrchol /// </summary> /// <param name="paPolicko">policko</param> /// <param name="paPolickoVedlajsie">susedne policko</param> private void VytvorNovuHranu(Policko paPolicko, Policko paPolickoVedlajsie) { Hrana hr = new Hrana(); paPolicko.Hrana = hr; paPolicko.Vrchol = null; hr.PridajPolicko(paPolicko); hr.Vrchol1 = paPolickoVedlajsie.Vrchol; aZoznamHran.Add(hr); }
/// <summary> /// Vytvorenie digrafu, teda kadα z hrαn sa zaznamenα aj v opraθnom smere /// </summary> private void HranyVOpacnomSmere() { int pocet = aZoznamHran.Count; int hodnotaAktualnej; for (int i = 0; i < pocet; i++) { Hrana aktualna = aZoznamHran[i]; hodnotaAktualnej = aktualna.DajHodnotu(); Hrana nova = new Hrana(); nova.Vrchol1 = aktualna.Vrchol2; nova.Vrchol2 = aktualna.Vrchol1; if (hodnotaAktualnej > 1) { for (int a = hodnotaAktualnej - 2; a >= 0; --a) { nova.PridajPolicko(aktualna.DajPolicko(a)); } } aZoznamHran.Add(nova); } }