J'utilise ArcGIS Desktop 10.0.
J'ai une astuce pour supprimer les trous de beignet, qui convertit le polygone en ligne, puis crée un polygone à partir des lignes et, à la fin, les fusionne tous. L'inconvénient de cette stratégie est qu'elle supprime d'autres trous et zones vides qui en réalité sont vides et doivent être maintenus vides. Voir l'image ci-dessous:
Réponses:
J'essaierais l' outil Union avec NO_GAPS:
Vous pouvez ensuite sélectionner les entités avec des attributs vides en dessous d'une taille de seuil et calculer leurs attributs pour qu'ils soient identiques au polygone d'origine - ou les copier / coller dans la fenêtre Attributs de l'éditeur.
Les entités dont les attributs vierges dépassent la taille de seuil doivent être supprimées.
À partir de là, l' outil Dissoudre devrait terminer le travail.
la source
La solution de PolyGeo est celle que j'ai employée moi-même et qui fonctionne bien (+1). Une autre alternative est de tamponner vos polygones d'une petite quantité, puis de dé-tamponner le résultat de la même quantité (disons + 1m puis -1m). Cela fonctionne également bien, mais comporte un faible risque de joindre accidentellement des polygones voisins par la même quantité que votre tampon. Cela peut également augmenter le nombre de vertex (ce qui peut ou non être un problème).
Vous pouvez également écrire un script pour une solution robuste en itérant sur chaque polygone, en créant des polygones temporaires basés sur les anneaux intérieurs et en les testant pour leurs zones. S'ils sont en dessous de votre seuil, vous supprimez ensuite cet anneau intérieur de la géométrie et mettez à jour votre ligne. Cette solution est plus de travail que la solution de PolyGeo ou mon hack de tampon ci-dessus mais est peut-être une approche "plus pure".
la source
Vous pouvez utiliser l'outil "Eliminer la pièce polygone" (Outils de gestion des données -> Généralisation) dans ArcToolbox. Vous pouvez spécifier la zone / le pourcentage de trous minimum à supprimer.
la source
Voici une autre façon de supprimer des lacs des polygones (comme la couche de carte de code postal de Navteq). Ceci est également utile pour nettoyer les couches de carte de territoire qui ont été générées en dissolvant la couche de carte de code postal par le code de territoire.
Notez que cela ne corrigera pas le problème des rivières qui sont coupées dans le contour du polygone, mais cela améliore la couche de carte d'origine en supprimant les trous de beignets intérieurs.
la source
Si les polygones de la classe d'entités contiennent d'autres polygones de la même classe d'entités (par exemple, le Lesotho en Afrique du Sud) et si vous devez éliminer l'édition manuelle au profit de ModelBuilder, etc., l'utilisation de "Eliminer la partie polygone" est la solution la plus rapide. Paramètres d'outil:
- "Condition (facultatif)" = ZONE - "Zone (facultatif)" = un très grand nombre (disons, 1e + 100) - "Éliminer uniquement les pièces contenues (facultatif)" = [vérifié]
Cela donnera une Afrique du Sud dont la zone du Lesotho est remplie, essentielle pour les flux de travail tels que la sortie de sommets à utiliser dans les visuels Polygon dans Tableau.
la source
Puisqu'il n'a pas été mentionné jusqu'à présent et qu'il semble être le bon outil pour exactement ce que vous essayez de réaliser: polygones agrégés
Définissez la taille minimum_hole_size sur la taille minimale d'un trou de polygone que vous souhaitez conserver. Les plus petits seront éliminés.
La valeur optionnelle minimum_area dans le même outil fait de même pour les parties de polygone qui ne sont pas des trous.
la source