Re: Equivalence between (multi-)polygons with spikes (2)
vs> Corollary: For all purposes of boost::geometry, all polygons that only consist of spikes are equivalent to each other and are equivalent to the empty multi-polygon.
bg> See above and also - they are not spatially equal. If we examine spatial equalness, we don't check validity. If one contains a spike and another does not - they are not spatially equal because their boundaries
do not cover the same spatial space.
Sure. You are not checking validity, because you require valid input in the first place, which is fine with me. As far as I understand, you are basically saying that spikes are irrelevant because they are an artifact
of the representation and do not contribute to the spatial extent of the polygon. The polygon is a set of points. The representation describes this set of points by way of representing its boundaries. The actual polygon that is described by a representation
is the set of points included in the represented boundaries. Since spikes are boundaries that do not contain any points in between, all representations that end up being the same after spikes are removed, are actually representing the same set of points, and
therefore are equivalent.
Based on this argument, you can then simplify your algorithms by requiring a representation that does not contain spikes. This is possible precisely because for every (otherwise valid) representation that contains
spikes there exists a representation that does not contain spikes and describes the same polygon (set of points).
This seems to be the basis of your requirement that input to your algorithms must not contain spikes. I’m not criticizing this, just trying to make it explicit with all its consequences.