Also ich versuche es mal zu erklären.
Nehmen wir z.B. ein Dreieck mit den Koordinaten: (1,1), (5,3) und (2,5). Die Daten sind in einem "array of TPoints". OK, jetzt kommt ein Punkt dazu, nähmlich (3,2). Dieser Punkt ist nicht im Polygon (was ich mit einem anderen Algorithmus überprüfe). OK, weil der Punnkt (3,2) nicht im Polygon ist will ich ihn (in diesem Beispiel) als vierte Ecke haben, also aus dem Dreieck ein Viereck machen. Aber wenn ich den Punkt nur an die letzte Stelle des Array hinzufüge, zeichnet das Programm kein Viereck weil sich die Linien die die Punkte verbinden sich schneiden,
Also ich will die Punkte so sortieren dass es keine Überschneidungen gibt wenn ich die Punkte in der Reihenfolge des Array verbinde. Ich hoffe ich konnte es ein bisschen besser erklären.