PolygonsandMultiPolygons should follow the right-hand rule
Ich habe es in den letzten 3 Jahren ohne Probleme mit meiner alten Geojson-Datei verwendet. Geojsonlint erzwingt nun die rechte Regel, wie man das Problem behebt.
Die Verwendung von MUST gibt eine absolute Anforderung der Spezifikation an. Die nachfolgende Sprache, andere Wicklungen nicht abzulehnen, ist jedoch seltsam und lässt sich streiten - vielleicht sollten Parser andere Wicklungen akzeptieren und korrigieren. Ich denke, das, was geojsonlint (von geojsonhint) dazu bringt, das Wort zu verwenden, sollte statt MUSS in ihrer Rückmeldung stehen.
Daher stimme ich der Position von geojsonlint.com zu, da sie den Link zur Spezifikation 2016 ganz oben auf ihrer Seite platzieren. Ihre Polygone sind gemäß der Spezifikation von 2016 schlecht. Aber dennoch sind sie gemäß der informellen Spezifikation von 2008 in Ordnung. Wenn Sie also die Wicklung Ihrer Polygone nicht ändern möchten, müssen Sie sicherstellen, dass alle verwendeten Linters oder Parser der alten Spezifikation von 2008 entsprechen und nicht eines Tages plötzlich auf die neue formale Spezifikation migrieren.
Oder vielleicht sollten Sie überlegen, ob Sie die Wicklung Ihres Polygons ändern sollten, um mit beiden Spezifikationen Schritt zu halten und besser für die Zukunft zu positioniert zu sein, wenn die Spezifikation 2008 verblasst.
Beachten Sie, dass für mich die größte Änderung in der Spezifikation von 2016 darin bestand, dass die Unterstützung für Koordinatensysteme vollständig eingestellt wurde. Ich hatte mein ganzes GeoJSON in NAD83 und musste es dann stillschweigend entfernen, da jetzt alles GeoJSON WGS84 ist. Zum Glück stammten alle meine Polygone von Oracle Spatial und waren bereits mit der rechten Hand verwundet.
Für mich wäre es gut, wenn Geojsonlint die Option hätte, den Wicklungstest auszulassen oder dies als separate Ausgabe zu melden. Das ist es auch, was die Spezifikation irgendwie empfiehlt.
user30184
4
meine alte geojson arbeit mit google map, leaflet, openlayer, mapbox, bing map, etc. aber geojsonlint.com validate schlug fehl .
Ich muss eine andere Website zur Validierung verwenden:
http://geojson.io
Für alle, die dies finden und nach einem Werkzeug suchen, um es zu beheben. GDALs ogr2ogr können die "2008" -Spezifikation GeoJSON verwenden und im Standardmodus "RFC7946" ausschreiben (wobei die Polygone der rechten Regel zur Orientierung folgen).
meine alte geojson arbeit mit google map, leaflet, openlayer, mapbox, bing map, etc. aber geojsonlint.com validate schlug fehl .
Ich muss eine andere Website zur Validierung verwenden: http://geojson.io
quelle
Für alle, die dies finden und nach einem Werkzeug suchen, um es zu beheben. GDALs ogr2ogr können die "2008" -Spezifikation GeoJSON verwenden und im Standardmodus "RFC7946" ausschreiben (wobei die Polygone der rechten Regel zur Orientierung folgen).
ogr2ogr -f GeoJSON -lco RFC7946=YES output.json input.json
oder zur Verwendung in Skripten, in denen Sie den GeoJSON als String eingeben und ausgeben möchten:
echo 'Your GeoJSON' | ogr2ogr -f GeoJSON -lco RFC7946=YES /vsistdout/ /vsistdin/
quelle
https://mapster.me/right-hand-rule-geojson-fixer/ Diese Seite verfügt über eine clientseitige Javascript-Funktion, die das Problem mit der Rechtshandregel behebt.
quelle
Dies kann sehr einfach in Python mit behoben werden
geojson-rewind
.quelle