Fix ungültige polygon in Formschöne
Formschöne definiert ein Polygon als ungültig, wenn jedes seiner Segmente überschneiden, einschließlich der Segmente, sind colinear. Viele software-Pakete erstellen Sie eine region oder einen Bereich mit einer "Aussparung", wie hier gezeigt, die colinear Segmente:
>>> pp = Polygon([(0,0), (0,3), (3,3), (3,0), (2,0),
(2,2), (1,2), (1,1), (2,1), (2,0), (0,0)])
>>> pp.is_valid
WARNING:shapely.geos:Self-intersection at or near point 2 0
False
Natürlich, den Ausschnitt, die implementiert werden können, die nativ in Formschönen, oder dieselbe geometrie umgesetzt werden können, wie zwei gültige Polygone, aber wenn ich nur die Liste der Punkte, die oben gezeigt, gibt es eine leicht zu "beheben" dieses (erstellen von geometrie aus dieser Liste der Punkte)?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich habe eine Lösung gefunden, die funktioniert für den speziellen Fall gegeben:
buffer(0)
Technik. Wir hatten bowtie Fällen, in denen es zerstört den größten Teil des Polygons und linke nur eine kleine bowtied Ecke. YMMV.