Thanks for the different approaches — this clarifies the distinction between bounding with a finite rectangle and using FullRegion.
FullRegion
I have a related question: if the goal is to work symbolically with the true exterior region (unbounded) — for example to integrate over it or apply further region operations — is RegionDifference[FullRegion[2], [\[Polygon\]][1] ][pts]] always the preferred formulation?
RegionDifference[FullRegion[2], [\[Polygon\]][1] ][pts]]
In particular:
FullRegion[2]
Reduce[!Element[{x,y}, poly], …]
I’m trying to understand which representation is more robust when the exterior region is used in subsequent analytic computations rather than just plotting.
Appreciate any insight.
Playing around with FullRegion[2] I discovered, to my surprise, that we can DiscretizeRegion the whole plane, without any warning, resulting in a square with finite measure:
DiscretizeRegion
DiscretizeRegion[FullRegion[2]] RegionMeasure[%]
or even this:
BoundaryDiscretizeRegion[FullRegion[2]] RegionMeasure[%]
This also works:
pts = {{1, 1}, {-1, 1}, {-1, 0}, {-1/2, 0}, {0, -1/2}, {0, -1}, {1, -1}}; RegionDifference[Rectangle[{-2, -2}, {2, 2}], Polygon[pts]]
Your method has the boundary region going from -2 to 2 in the x and y directions. My method has the boundary region going from -Infinity to Infinity in the x and y directions.
How about this?:
pts = {{1, 1}, {-1, 1}, {-1, 0}, {-1/2, 0}, {0, -1/2}, {0, -1}, {1, -1}}; exterior = RegionDifference[FullRegion[2], Polygon[pts]]
That also works. Thanks