//------------------------------------------------------------------------------------ public void LinkDots()//устанавливает связь между двумя точками и возвращает массив связей { var qry = from Dot d in aDots where d.BlokingDots.Count > 0 select d; Dot[] dts = qry.ToArray(); Links l; foreach (Dot d in dts) { for (int i = 0; i < dts.Length; i++) { if (d.Equals(dts[i]) == false & d.IsNeiborDots(dts[i]) & d.Blocked == false & dts[i].Blocked == false) { l = new Links(dts[i], d); if (l.LinkExist(lnks.ToArray()) == -1) { lnks.Add(l); } } } } }