Remplir des polygones Donut à l'aide d'ArcGIS for Desktop?

10

J'ai un ensemble de polygones qui représentent des plans d'eau.

Dans la même entité se trouvent des polygones qui sont les îles de la masse d'eau. Donc, pour un lac donné, il y a des polygones plus petits à l'intérieur qui représentent les îles dans la même entité. Cependant, le polygone d'eau lui-même pour ce lac contient des "trous" là où les îles existent.

Donc, pour un lac avec une île au milieu, le polygone d'eau ressemblerait à un beignet.

Maintenant, je veux créer une couche de polygones d'eau avec les trous remplis, de sorte que lorsque je veux voir tous les lacs sur une carte, je puisse voir tous les polygones d'eau sans trous.

Remarque: Une île peut contenir des plans d'eau en elle-même. Il peut même y avoir des plans d'eau imbriqués dans une île, qui fait partie d'un plan d'eau qui fait partie d'une autre île. Un peu comme une création d'eau / d'îles :-).

Comment pourrais-je le faire dans ArcGIS for Desktop?

LeeMobile
la source

Réponses:

13

Si vous souhaitez le faire par le biais de l'édition, vous pouvez trouver une méthode simple ici . Également à partir de cet article: "Il existe une solution beaucoup plus simple. Si vous exécutez l' outil Union sur la classe d'entités en question (il s'agit donc de la seule classe d'entités de la liste) et décochez la case" écarts autorisés ", il remplira les trous / beignets que vous pouvez ensuite interroger simplement par les attributs manquants. "

Vous pouvez également utiliser les outils Fusionner ou Ajouter dans ArcGIS pour combiner ces polygones. Le premier crée un nouvel ensemble de données de sortie et le second ajoute à un ensemble de données existant. Si vous suivez cette voie, je recommanderais de fusionner les polygones, puis d'effectuer une union (ce qui peut éliminer les lacunes). Cela peut être votre meilleur pari car vous pouvez ajouter ultérieurement des îles imbriquées.

Radar
la source
Je n'ai pas précisé clairement que les îles et les polygones d'eau font partie du même ensemble de données. Dans nos données, un attribut indique si le polygone est de l'eau ou une île. Ils sont donc déjà "fusionnés". Comment pourrais-je prendre les polygones de l'île et remplir les trous? Cela peut-il être fait par programme sans avoir à unir manuellement les îles aux polygones d'eau?
LeeMobile
Voir la réponse de @ Craig concernant l'outil Eliminer les pièces polygonales. Sans travailler avec vos données, il est difficile de fournir un flux de travail exact, mais vous devriez être en mesure de résoudre rapidement ce problème en utilisant les outils mentionnés jusqu'à présent (Fusionner, Union, Éliminer) et une certaine expérimentation.
Radar
Je pense que d'après vos commentaires, ils ne sont pas fusionnés. les polygones d'eau et les polygones d'îles sont dans le même ensemble de données et ont des lignes séparées (caractéristiques pour chacun). vous pouvez utiliser ma solution ou ma représentation cartographique pour accomplir ce dont vous avez besoin.
Brad Nesom
10

L'outil Éliminer les pièces de polygone dans ArcGIS 10 peut supprimer des pièces intérieures et le faire en fonction de conditions telles que la zone, etc. Voir la description de l'outil ici

Craig Williams
la source
1

Vous pouvez faire une copie de votre couche (cela donne deux versions des mêmes données).
Ensuite, définissez les îles avec une définition de type de requête est comme "île".
rendre cette couche brune (pour la saleté) et la mettre au-dessus de l'eau.
Ensuite, faites la requête def pour les lacs en disant que le type n'est pas "Island".
changez le remplissage en bleu et c'est parti.

Cela dépend simplement d'avoir un champ (le mien est nommé type) qui contient des valeurs pour chaque polygone

Brad Nesom
la source
2
Les représentations cartographiques peuvent le faire sans la duplication des couches
Mapperz