bool IReadOnlyRegion2D.IntersectsWith(Rect2D targetRect) { return(_bounds.IntersectsWith(targetRect) && _rectSet.Any(rect => rect.IntersectsWith(targetRect))); }
public void Clear() { _rectSet.Clear(); _bounds = Rect2D.Empty; }
/// <summary> /// /// </summary> public static void UnionLastContinuousOrAdd(this IList <Rect2D> rectList, Rect2D rect) { if (rectList.LastOrNullValue() is { } last&& last.Inflate(1, 1).IntersectsWith(rect)) { rectList[^ 1] = last.Union(rect);