Pourquoi les trous dans mes polygones ne sont-ils pas généralisés?

8

J'ai une couche polygonale avec de nombreux trous. Je voudrais le généraliser. J'ai utilisé v.generalize d'herbe. Avec lui, j'ai utilisé l'algorithme chaiken. Mais, seules les bordures des polygones ont été généralisées, les trous qu'elles contiennent n'ont pas lissé leurs bords.

Que puis-je faire pour lisser tous les bords (en ajoutant des bords de trou) du polygone?

Trous à bords dentelés

Diogo Caribé
la source
1
J'exploserais des polygones dans la coquille extérieure et les trous, les généraliserais et je construirais à nouveau des polygones de beignets. Impossible de vérifier les commandes à utiliser pour le moment.
Detlev
Ce problème se produit-il également dans GRASS GIS 7?
markusN

Réponses:

4

Je vous recommande d'utiliser le tout nouveau géoalgorithme de QGIS 2.14.1, nommé Smooth.py

Avec Smooth Geometry, il est possible de lisser tout le polygone, pas seulement les limites, comme dans la méthode Chaiken de v.generalize

eduardosteps
la source
Intéressant, devra bientôt essayer QGIS 2.14!
Joseph
6

Je suppose que vous utilisez GRASS 6.4.xcar il y avait des problèmes concernant la généralisation des polygones avec des trous . Cela a été corrigé dans GRASS 7, bien que je n'ai pas cette version, je ne peux donc pas la confirmer.

Une solution de contournement consisterait à utiliser l' outil Remplir les trous de la boîte à outils de traitement sur votre calque d'origine:

Exemple de polygone

Trous remplis

Utilisez l' outil Différence sur les calques d' origine et remplis :

Différence

Utilisez l' outil v.generalize sur les couches remplies et les couches de différence :

Rempli généralisé

Différence généralisée

Enfin, exécutez à nouveau l'outil Différence sur les deux couches généralisées :

Résultat final

Joseph
la source
1
Je pense faire comme tu me conseilles. Même résoudre le problème de ma question, votre solution semble un peu difficile. Je vais vérifier quelle est la version dans laquelle je fais mon travail. Vous êtes droit, la version gazon est 6.4.x. Je vais le faire dans la version 7.0 et vous dire ce qui se passe. Merci
Diogo Caribé
@ DiogoCaribé - Peut-être pourriez-vous partager votre fichier de formes pour que d'autres puissent le tester en utilisant d'autres méthodes?
Joseph
1

Je crois que le meilleur outil de généralisation est http://www.mapshaper.org/ et il semble très bien gérer les trous. Super facile à utiliser / solution de contournement beaucoup plus courte. J'utilise généralement l'algorithme visvalingam.

entrez la description de l'image ici

CCantey
la source
Je n'aime pas cet outil. Mieux, je n'aime pas son algorithme. Le résultat est tellement désagréable. Il existe d'autres algorithmes qui lissent les polygones en continu.
Diogo Caribé