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.

 

Regards

   Volker

--
Volker Schöch | vschoech@think-cell.com
Senior Software Engineer


We are looking for C++ Developers: http://www.think-cell.com/career

think-cell Software GmbH http://www.think-cell.com
Chausseestr. 8/E phone / fax +49 30 666473-10 / -19
10115 Berlin, Germany US phone / fax +1 800 891 8091 / +1 212 504 3039
Amtsgericht Berlin-Charlottenburg, HRB 85229 | European Union VAT Id DE813474306
Directors: Dr. Markus Hannebauer, Dr. Arno Schödl