Hi,

Please correct me if I’m wrong:

 

-       Any (multi-)polygon that only consists of spikes has area 0 (zero).

-       Any (multi-)polygon that has area 0 (zero) and does not have any inside-out or self-intersecting polygons, is either empty or consists of only spikes.

 

As far as I understand, the algorithms in boost::geometry require that input polygons do not contain spikes, and the results of these algorithms can be assumed to not contain spikes either. What’s the definition of a spike? This seems to imply that as long as I only deal with positive-area multi-polygons, zero area should be equivalent to a completely empty multi-polygon.

 

Interestingly, boost::geometry::remove_spikes( “MULTIPOLYGON(((4287 2160,5984 2160)))” ) does not modify the input at all, and this is an example of a non-empty, zero-area multi-polygon that does not seem to contain spikes (b/c remove_spikes does not change a thing). What am I missing?

 

Thank you,

   Volker

 

P.S. Boost 1.55.0, my polygons are oriented counter-clockwise, open and based on int.

--
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