Ich habe eine Reihe von ungeordneten Scheitelpunkten, die ein konkaves Polygon bilden können. Jetzt möchte ich sie entweder im oder gegen den Uhrzeigersinn bestellen.CONCAVE-Polygonscheitelpunkte im (Zähler) im Uhrzeigersinn bestellen?
An answer here schlägt vor, die folgenden Schritte:
- Finden Sie das Polygon-Zentrum
- Compute Winkel
- Bestell Punkte Winkel
Dies ist natürlich nur für konvexen Polygon und wird fehlschlagen, wenn die Punkte bilden eine konkave.
Wie kann ich dies zu einem konkaven machen?
Ich benutze Python, aber alle generischen Antworten willkommen.
Was haben Sie bei Ihrer Suche nach einem Algorithmus gefunden, um die * konkave Hülle * einer Menge von Punkten zu finden? Sobald Sie diese Punkte haben, sollte ein Spaziergang um sie herum einfach zu programmieren sein. –
@HighPerformanceMark Ich denke, Sie beziehen sich auf die * Alpha-Form *. Ja, ich habe es mir angeschaut, bin aber [einem ungelösten Problem hier] begegnet (http://stackoverflow.com/questions/19948398/c-python-bindings-cause-access-violation-reading-location-0x00000002) und kann daher nicht Vorgehen. –
Ich glaube nicht, dass die Reihenfolge im Uhrzeigersinn und gegen den Uhrzeigersinn einen Sinn ergibt, wenn man über die Eckpunkte eines allgemeinen konkaven Polygons spricht. – martineau