Existe-t-il une option dans QGIS pour remplir automatiquement les trous dans les polygones en définissant des paramètres, par exemple la zone maximale, la distance entre les limites? Je veux supprimer / remplir des trous qui sont très "fins" / petits.
12
Réponses:
À l'aide de QGIS 2.10.1-Pisa avec la version 2.10.2 de traitement , deux outils sont disponibles dans la boîte à outils de traitement :
J'espère que cela t'aides!
la source
J'ai rencontré le même problème que le vôtre avec ce fichier de formes, ayant de nombreux écarts entre les polygones.
Afin de résoudre le problème, vous pouvez utiliser une légère modification de la méthode de tshiffle:
Cette action créera un nouveau fichier de formes consistant en un seul polygone, vous devez donc le faire exploser en parties uniques. Pour cela, vous pouvez utiliser l'outil Vector / Geometry Tools / Multipart to singleparts.
Après cela, supprimez l'entité externe. Vous disposez maintenant, dans un nouveau fichier de formes, de plusieurs polygones couvrant les lacunes de votre couverture d'origine.
la source
Il existe peut-être des solutions plus élégantes, mais cela a toujours fonctionné pour moi.
1) Créez des polygones de "remplissage de trous". Pour ce faire, dessinez un polygone géant plus grand que l'original et utilisez l'outil "différence". Si vous avez dessiné un polygone beaucoup plus grand, vous aurez tous les polygones de "remplissage de trous" plus un seul polygone plus grand qui fait le tour de la forme d'origine. Supprimez ce grand polygone, en conservant les polygones de "remplissage de trous".
2) Fusionnez les polygones de "remplissage de trous" avec le fichier de formes d'origine. Si vous souhaitez uniquement remplir des trous qui correspondent à certains critères (c'est-à-dire sous X nombre de kilomètres carrés), vous pouvez filtrer pour cela ici.
3) Dissolvez le polygone nouvellement fusionné sur un champ commun.
la source
En python / galbé, cela peut remplir votre polygone:
la source
J'ai vu des explications suivre le même chemin que gtapko et tshiffle, mais aucune n'a fonctionné pour moi car les géométries invalides ont rendu l'outil de différence dysfonctionnel. J'ai donc trouvé ma propre solution qui n'est pas 100% automatisée, mais elle est gérable. Probablement quelqu'un l'a déjà compris, mais je vais tenter ma chance:
1) Créez un ID sur la couche d'origine endommagée
La création d'un attribut ID est simple, mais ma solution l'est aussi, je vais donc la parcourir.
Tout d'abord, vous devez ouvrir votre table attributaire et ensuite aller à la calculatrice de champ , qui est un bouton à peu près comme un boulier. Là, vous aurez la possibilité de créer un nouveau champ ou de mettre à jour un champ existant. Sur l'image ci-dessus, j'en crée un nouveau appelé "ID". La formule est juste à la fin de l'image. (Désolé d'avoir mon QGIS configuré dans une langue différente. Étant donné que la conception et les formules sont exactement les mêmes dans toutes les versions linguistiques, je ne pense pas que cela nous gênera ici.)
2) Convertissez les polygones en lignes
Cette étape est située dans la section Vecteur> Géométrie du menu. Votre forme convertie devrait ressembler à ceci:
Juste après avoir converti les polygones en ligne, vous devrez faire exactement le contraire, qui est ...
3) Convertir des lignes en polygones
Les options sont côte à côte. Encore une fois, ne nous occupons pas de la barrière de la langue ici.
4) Réjouissez-vous La raison pour laquelle vous avez effectué les étapes 2 et 3 est que maintenant vous êtes sûr que ces lignes seront considérées comme des polygones, ce qui signifie qu'elles ont maintenant leur propre ligne sur la table d'attributs. Si vous le vérifiez, cela ressemblera à ceci:
Le premier est TOUJOURS le polygone entier (croyez-moi, j'ai supprimé quelques centaines de lignes aujourd'hui ...) et le reste sont les lignes lâches au milieu. Vous pouvez activer l'édition et vous préparer à l'action. Si vous décidez d'essayer ceci, vous devez garder à l'esprit deux choses: organiser votre table en fonction de l' ID , de cette façon vous êtes sûr de ne rien manquer et d'utiliser shift pour sélectionner des clusters de données, comme n'importe quel autre programme .
Je suis conscient que ce n'est pas la crème de la crème de la résolution de problèmes QGIS, mais si vous êtes confronté à une situation où les outils ne fonctionnent pas en raison de la géométrie non valide que cette ligne crée (j'ai même essayé de dissoudre par l'ID, mais cela n'a pas fonctionné), alors cela pourrait être une issue.
la source