Je voudrais simplifier certains polygones qui représentent des rivières en chaînes linéaires. Je suppose que les trous dans les polygones peuvent être omis. Quelqu'un a une bonne idée de comment le faire simplement?
Ce serait bien, s'il était possible de le faire directement dans postgis ou par un autre outil open source, mais une brève description de l'algorithme sera suffisante.
Dans PostGIS 2.2 avec SFCGAL, cela peut être fait avec ST_StraightSkeleton ou ST_ApproximateMedialAxis , selon vos critères.
la source
le plugin JUMP skeletonizer est disponible dans le cadre de openjump http://www.openjump.org
la source
Juste comme un avertissement, je n'ai jamais essayé cela auparavant. Votre succès dépendra de la qualité des données dont vous disposez actuellement.
Considérez donc le polygone comme une bande de triangles. Chaque triangle se connecte à un sommet sur le côté opposé du couloir avec un bord. Maintenant, pour chacun des bords du couloir, placez simplement un sommet droit au centre. Ces nouveaux sommets sont les points de votre chaîne de caractères. Vous pouvez probablement jouer avec la façon dont vous sélectionnez le point central sur le bord pour une plus grande précision.
la source
Encore une fois, ET GeoWizards pourrait être la réponse. Essayez l' outil Créer des traits d'axe à partir de polygones .
la source