Polygones inversés (règle de gauche à droite)

9

J'ai un fichier geojson qui ne s'affiche pas correctement, et je pense que cela a à voir avec le fichier contenant des multipolygones ne suivant pas la règle de droite. Quel outil peut m'aider à résoudre ce problème?

J'ai essayé d'importer et d'exporter avec QGIS, et de faire des allers-retours entre les formats avec org2org, mais cela ne m'a mené nulle part.

Leo
la source
1
QGIS dispose de Vector, d'outils de géométrie, de vérifier la validité. Ogr2ogr a ST_MakeValid avec l'option -dialect Sqlite pour corriger l'ordre incorrect des anneaux.
klewis
Il est assez simple d'implémenter la règle trapézoïdale en Java, JavaScript ou Python pour calculer la zone et utiliser le signe pour déterminer la directionnalité de l'anneau. Si vous fournissez un exemple de la géométrie incriminée et / ou un graphique de l'affichage incorrect, nous aurions plus de facilité à vous aider.
Vince

Réponses:

9

Je crois que https://github.com/mapbox/geojson-rewind résoudra votre problème.

La spécification GeoJSON est pointilleuse sur l'ordre d'enroulement, elle vous aide à générer des géométries Polygon et MultiPolygon conformes, et elle vous permet d'utiliser le comportement par défaut de Canvas et d'autres bibliothèques de dessins pour colorer les anneaux intérieurs des fonctionnalités Polygon et MultiPolygon.

Brad
la source
1

Pas un outil, mais vous pouvez le lire avec galbe et utiliser shapely.geometry.polygon.orientpour orienter les polygones (la valeur par défaut est déjà correcte). Avec quelques lignes de code supplémentaires, vous pouvez également vous orienter MultiPolygonen itérant sur les polygones inclus.

Martin Thoma
la source