private void RemoveLine(MarkupLine line) { foreach (var intersect in GetExistIntersects(line).ToArray()) { if (intersect.Pair.GetOther(line) is MarkupRegularLine regularLine) { regularLine.RemoveRules(line); } LineIntersects.Remove(intersect.Pair); } foreach (var filler in GetLineFillers(line).ToArray()) { FillersList.Remove(filler); } if (CrosswalksDictionary.ContainsKey(line)) { CrosswalksDictionary.Remove(line); } else { foreach (var crosswalk in GetLinesIsBorder(line)) { crosswalk.RemoveBorder(line); } } LinesDictionary.Remove(line.PointPair.Hash); }
public void Clear() { LinesDictionary.Clear(); FillersList.Clear(); CrosswalksDictionary.Clear(); RecalculateDashes(); }