Comment créer un masque polygonal «zone d'intérêt»?

12

J'ai créé un outil GP à l'aide d'ArcGIS qui crée un masque de "zone d'intérêt" à partir d'entités sélectionnées. En effet, il crée une nouvelle couche de polygone en anneau où le trou était les entités précédemment sélectionnées. Puis-je répliquer cette tâche dans QGIS?

Exemple: pour une carte spécifique, je souhaite mettre en surbrillance un comté au sein de l'État et masquer le reste de l'État et des entités à l'extérieur du comté avec une couche polygonale semi-transparente grise au-dessus. Conceptuellement, je le ferais de la même manière.

  1. L'utilisateur charge l'état, le comté et la couche fluviale
  2. L'utilisateur sélectionne le comté d'intérêt
  3. Exécutez un utilitaire (s'il existe) qui exporte toutes les entités non sélectionnées vers un fichier de formes en anneau sans le polygone initialement sélectionné. Si ce masque de couche était une couche "en mémoire" uniquement disponible pour QGIS, ce serait bien aussi, peut-être même mieux.

Ce type d'outil ou de capacité existe-t-il déjà dans QGIS ou devrai-je l'écrire en tant que fonction personnalisée?

Voici comment je l'ai fait dans ArcGIS avec ModelBuilder et le résultat que je rechercherais, où la couche jaune et la couche fluviale existent à l'échelle de l'État (tout au long de l'image), et la couche grise est transparente avec un "trou de beignet", permettant à la partie jaune vif de s'afficher et d'attirer l'attention des téléspectateurs sur la zone d'intérêt:

entrez la description de l'image ici entrez la description de l'image ici

RyanKDalton
la source

Réponses:

12

Pour créer un masque, je suggère d'utiliser Polygone à partir des étendues de calque (vecteur - outils de recherche) et Différence (vecteur - outils de géotraitement) avec l'option "Utiliser uniquement les entités sélectionnées" activée.

Si vous voulez vraiment "exporter toutes les fonctionnalités non sélectionnées vers un fichier de formes en beignet", vous pouvez essayer Dissoudre , mais c'est assez lent et vous pourriez vous retrouver avec des résultats sous-optimaux comme de minuscules trous, etc.

La création sur un grand polygone avec un polygone à partir de l'outil d'étendue de couche, puis la découpe du comté sélectionné devrait être beaucoup plus rapide.

obscur
la source
12

Merci @underdark pour votre orientation vers cette solution. La fonction fTools "Différence" était exactement l'outil qui a accompli la tâche. Cependant, différent de votre suggestion, je n'ai pas eu à créer d'abord le "polygone à partir des étendues de calques".

Au lieu de cela, la solution était:

  1. Charger la couche de données (comtés)
  2. Sélectionnez l'élément d'intérêt (comté A)
  3. Utilisez l'outil Vecteur-> Géotraitement-> Différence
  4. Sélectionnez la couche de comté comme deux entrées, "utiliser les entités sélectionnées" coché OFF pour la couche vecteur d'entrée, ON pour la couche de différence.

entrez la description de l'image ici

Cela donnera le calque avec toutes les fonctionnalités de l'entrée incluse SAUF les fonctionnalités sélectionnées. Merci!

RyanKDalton
la source
2
Un vote positif serait assez "merci";)
underdark
Cela fonctionne très bien. Le seul inconvénient est l'endroit où le comté borde la mer ou toute autre zone sans polygones, de sorte que ces zones ne sont pas masquées.
JimS-W
3

La différence symétrique dans QGIS 1.6 située dans Vector> Outils de géotraitement> Différence symétrique (outils de base standard) devrait générer votre masque à partir de deux polygones d'entrée ...

entrez la description de l'image ici

Mapperz
la source