Polygone umkehren (Regel von links nach rechts)

9

Ich habe eine Geojson-Datei, die nicht richtig angezeigt wird, und ich glaube, dass dies mit der Datei zu tun hat, die Multipolygone enthält, die nicht der rechten Regel entsprechen. Welches Tool kann mir helfen, dieses Problem zu beheben?

Ich habe versucht, mit QGIS zu importieren und zu exportieren und zwischen Formaten hin und her zu konvertieren org2org, aber das brachte mich nirgendwo hin.

Löwe
quelle
1
QGIS verfügt über Vektor, Geometrie-Tools und Gültigkeitsprüfung. Ogr2ogr hat ST_MakeValid mit der Option -dialect Sqlite, um eine falsche Ringreihenfolge zu beheben.
Klewis
Es ist einfach genug, die Trapezregel in Java, JavaScript oder Python zu implementieren, um die Fläche zu berechnen und das Vorzeichen zur Bestimmung der Ringrichtung zu verwenden. Wenn Sie ein Beispiel für die fehlerhafte Geometrie und / oder eine Grafik der falschen Anzeige angeben, können wir Ihnen leichter helfen.
Vince

Antworten:

9

Ich glaube, dass https://github.com/mapbox/geojson-rewind Ihr Problem beheben wird.

Die GeoJSON-Spezifikation ist hinsichtlich der Wicklungsreihenfolge wählerisch, hilft Ihnen beim Generieren kompatibler Polygon- und MultiPolygon-Geometrien und ermöglicht die Verwendung des Standardverhaltens von Canvas und anderen Zeichnungsbibliotheken zum Färben der Innenringe von Polygon- und MultiPolygon-Features.

Brad
quelle
1

Kein Werkzeug, aber Sie können es formschön lesen und shapely.geometry.polygon.orientzum Ausrichten von Polygonen verwenden (die Standardeinstellung ist bereits korrekt). Mit ein paar weiteren Codezeilen können Sie sich auch orientieren, MultiPolygonindem Sie über die enthaltenen Polygone iterieren.

Martin Thoma
quelle