public ExplicitShape2 Intersection(ExplicitShape2 shape2) { var newRect = GridRect.Intersection(storageBounds, shape2.storageBounds); var newShape = ImplicitShape.Intersection(implicitShape, shape2.implicitShape); return(new ExplicitShape2(newShape, newRect)); }
public ExplicitShape2 Union(ExplicitShape2 shape2) { var newRect = GridRect.UnionBoundingBox(storageBounds, shape2.storageBounds); var newShape = ImplicitShape.Union(implicitShape, shape2.implicitShape); return(new ExplicitShape2(newShape, newRect)); }