Boost logo

Geometry :

Subject: Re: [geometry] Equivalence between (multi-)polygons with spikes (3)
From: Volker Schöch (vschoech_at_[hidden])
Date: 2014-11-20 07:06:16

bg> E.g. your sample (in the ticket) with two points, where a spike is removed, results in a polygon with only one point. That is IMO a perfect result from remove_spikes. Because the spike is removed. remove_spikes should do nothing more than that... Why should it remove a remaining point - that point is not a spike. And remove_spikes should not change anything but spikes...


bg> That the result is still not as desired, OK, I understand that but... that should be implemented in another function (e.g. correct).

Thank you for the explanation. I'm not yet convinced. What exactly is the definition of a "spike"? How is a single point not a spike? It's a boundary that doesn't contain/represent any points of the polygon.

It might be debatable whether a single point is a spike and should be removed by remove_spikes(). However, it seems crystal clear to me that when removing spikes, the result cannot be a single point. Again: What exactly is a spike? Which points constitute a spike? In the example there was a polygon representation that consists of only a spike, i.e., the polygon does not have any points. It consists of a spike! Removing the spike is removing the polygon representation, seems obvious to me. The representation does not enclose any points, it is a spike, it should be removed. What's so special about one point or the other, that some points are removed from the representation but one remains?



Volker Schöch | vschoech_at_[hidden]<mailto:vschoech_at_[hidden]>
Senior Software Engineer
We are looking for C++ Developers:
think-cell Software GmbH>
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

Geometry list run by mateusz at