#1 Tue 25 June 2013 15:27
- krakatoe
- Participant occasionnel
- Date d'inscription: 20 Feb 2013
- Messages: 25
QGIS 1.8 (Windows) : Selection de polygone
Bonjour,
Je dispose de qgis 1.8 sous windows.
J'ai deux couches polygones.
Une couche A est composés de polygones contigus et formant toute une zone (ex : les communes d'un département).
Une couche B est composée de polygones, disséminés plus ou moins au hasard (ex : des hangars au sein de ce même département).
Certains polygones de ma couche A se superposent avec des polygones de ma couche B, d'autres en sont dépourvu.
Je souhaite sélectionner uniquement les polygones de ma couche A qui se superposent avec des polygones de ma couche B.
Ou, plus simplement, je souhaite sélectionner toutes les communes qui contiennent des hangars.
Ou, autrement dit (il me semble), si l'intersection des deux couches est non nulle, alors sélection de l’élément de la couche A.
Je n'ai pas trouvé dans les outils de géotraitement, une fonction qui permette de sélectionner des polygones selon cette règle.
Je n'ai pas trouvé non plus cette question dans les forums.
Si quelqu'un a une idée ? Merci d'avance.
Hors ligne
#2 Tue 25 June 2013 15:29
- yann84
- Participant actif
- Date d'inscription: 2 Dec 2011
- Messages: 137
Re: QGIS 1.8 (Windows) : Selection de polygone
Bonjour,
le plugin "query by example" devrait pouvoir t'aider !
Hors ligne
#3 Tue 25 June 2013 15:52
- krakatoe
- Participant occasionnel
- Date d'inscription: 20 Feb 2013
- Messages: 25
Re: QGIS 1.8 (Windows) : Selection de polygone
Merci Yann pour ta réponse.
Je ne connais pas ce plugin, il faut voir.
J'ai entre temps trouvé ce qui semble être la réponse à ma question, dans le menu vecteur/outils de recherche/selection par localisation.
Edit : je confirme, ça marche.
Après, dommage qu'il n'y ait pas de paramètre de tolérance, pour ignorer des communes où mon hangar empiéterait de quelques chouïas.
Dernière modification par krakatoe (Tue 25 June 2013 16:01)
Hors ligne
#4 Tue 25 June 2013 16:12
- yann84
- Participant actif
- Date d'inscription: 2 Dec 2011
- Messages: 137
Re: QGIS 1.8 (Windows) : Selection de polygone
OK,
j'en profite pour te signaler un problème auquel j'ai déjà eu affaire : la sélection par localisation de QGIS m'a parfois donné des résultats faux, c'est pour ça que je privilégie le plugin (qui offre plus de solutions). Par contre le problème de tolérance sera toujours présent, à part la modification manuelle je n'ai pas trouvé de solution...
Hors ligne
#5 Wed 26 June 2013 08:27
- christophe_hardy
- Participant actif
- Lieu: Arras
- Date d'inscription: 24 Oct 2011
- Messages: 101
Re: QGIS 1.8 (Windows) : Selection de polygone
Bonjour,
idem pour le soucis des petites parcelles dans les grandes ... je les corrigeais mannuellement.
Il manque une petite clause WHERE surface_hangar < tolerance (par exemple 1m²) qui permettrait de supprimer les "erreurs".
Après c'est possible dans Postgis ...
Hors ligne
#6 Thu 22 August 2013 14:44
- GAILLOT Alexis
- Participant actif
- Lieu: REMIREMONT
- Date d'inscription: 26 Mar 2009
- Messages: 53
Re: QGIS 1.8 (Windows) : Selection de polygone
Bonjour,
j'ai la même problématique, mais sur une seule couche, à savoir sélectionner tous les entités (polygones) de la couche qui intersecte les polygones de la même couche, et ensuite les fusionner (uniquement ceux qui s'intersectent les uns les autres). Ce sont des petits buffers, que je veux fusionner quand ils se chevauchent.
J'utilise Vecteur/outils de recherche/"sélection par localisation" en spécifiant de créer une nouvelle sélection.
Si je prend toute la couche (9570 entités), cela mouline pendant des heures, et me ramène toutes les entités.
Si j'applique l'outil à un petit nbre d'entités sélectionnées, il me ramène toute ma sélection, et pas uniquement les entités qui se chevauchent.
Donc j'en conclue que dans mon cas, l'outil "sélection par localisation" ne ramène pas le résultat escompté.
Je n'ai pas installé le fameux plugin que vous conseiller, pour des raisons de bridage/sécurité sur le réseau d'entreprise.
Soit j'utilise mal la sélection par localisation, soit elle ne marche pas.
Quelqu'un peut-il témoigner là-dessus dans un contexte similaire ?
Merci d'avance. Cordialement, Alexis GAILLOT
Hors ligne
#7 Thu 22 August 2013 15:41
- SANTANNA
- Moderateur
- Lieu: Angers
- Date d'inscription: 18 Jan 2008
- Messages: 3945
Re: QGIS 1.8 (Windows) : Selection de polygone
Bonjour,
je n'apporte pas directement de réponse à votre demande mais, si dans votre couche de buffer, les attributs importent peu, lors de sa création, vous pouvez générer une couche de buffer unique pour tous les objets (en cochant "union des résultats du tampon") et après éclater ce multipolygone en autant de polygones que possible avec l'outil Vecteur > Outils de géométrie > Morceaux multiples vers morceau unique.
Ou bien, étant donné que la couche existe déjà, tout fusionner puis éclater après.
Hors ligne
#8 Thu 22 August 2013 17:07
- JP LLORENS
- Participant assidu
- Date d'inscription: 12 Nov 2008
- Messages: 231
Re: QGIS 1.8 (Windows) : Selection de polygone
Bonjour.
Si tu fais une requête spatiale d'une couche sur elle même il est normal que le résultat corresponde au nombre d'entité de ta couche puisque tu lui demandes de trouver les objets qui se superposent eux mêmes.
J'ai peut être la solution (en tout cas ça marche avec 2 polygones qui se chevauchent)
1 - dans les outils de géotraitement (vecteur /outils de géotraitement) tu utilises la fonction UNION avec le nom de ta couche en paramètre dans la couche vectorielle de saisie ET la couche d'union, tu crée un nouveau shp en sortie.
Dans ce nouveau shp, QGIS va faire l'intersection de tous les objets entre eux en répliquant les attributs. Exemple j'ai une couche de 2 poly qui s'intersectent avec un attribut "libelle", après l'union je vais me trouver avec 4 poly (chaque poly découpe l'autre) et les attributs "libelle" et "libelle_2"
2 - tu sélectionnes tous les objets (avec une requête dans la table => Recherche avancée) pour lesquels libelle = libelle_2 (ce qui correspond aux parties qui ne se superposaient pas),
3 - tu supprimes cette sélection, il ne te reste que les emprise communes dédoublées,
4 - tu relances ta sélection par localisation en entrant ta couche d'origine dans "Sélection d'entités dans" et la couche issue de union dans dans la couche "qui intersecte les entités dans ..."
J'espère que ma méthode reste claire !
Cordialement
JP Llorens
Dernière modification par JP LLORENS (Thu 22 August 2013 17:09)
Hors ligne
#9 Mon 26 August 2013 18:00
- GAILLOT Alexis
- Participant actif
- Lieu: REMIREMONT
- Date d'inscription: 26 Mar 2009
- Messages: 53
Re: QGIS 1.8 (Windows) : Selection de polygone
Bonjour,
j'ai testé pas à pas ta solution (avec 2 fois 2 polygones qui se chevauchent, et un autre qui n'en chevauche aucun, avec 1 attribut ID, et 1 attribut Libelle), et je dois dire merci, car au départ j'était un peut perplexe.
Lorsque je fais l'union, il en résulte 12 polygones dont certains ont des valeurs d'attributs NULL. Je passe les détails, sur le fait que quand j'ai voulu mettre en surbrillance les polygones 1 à 1, je n'ai pas pu tous les identifier visuellement, et pour cause car j'ai compris à postériori que certains devaient avoir une surface nulle.
Bref, après avoir supprimé les polygones dont Lib = lib2 et aussi ceux qui ont des champ à NULL, il reste effectivement uniquement les portions communes.
Donc OK pour la sélection par localisation, ce qui permet au final de mettre en évidence visuellement les polygones qui se chevauchent les uns-les autres. Merci pour cette méthode qui n'est pas forcément intuitive.
Par contre, le but final était, si c'est possible, non seulement de tous les sélectionner, mais de les "unifier par paquet", c'est à dire regrouper ensemble ceux qui se chevauchent, dans le but de pouvoir compter les points qui se trouvent à l’intérieur.
A l'origine, il s'agit de points adresses avec attribut nbre de logements (1 point = 1 logement), qui ont été buffurisés (2m), dans le but de détecter les points adresses qui sont plus ou moins superposés.
Cordialement, Alexis GAILLOT
Hors ligne
#10 Tue 27 August 2013 09:54
- artiz
- Participant actif
- Date d'inscription: 29 May 2013
- Messages: 64
Re: QGIS 1.8 (Windows) : Selection de polygone
Pour ta dernière demande tu peux passer ta couche en mode édition.
Tu sélectionnes les polygones que tu veux fusionner en un seul et tu as un bouton blancavec une étoile jaune qui s'appelle "fusionner les entités sélectionnées".
Tu cliques dessus et le tour est joué !
Hors ligne
#11 Tue 27 August 2013 10:06
- JP LLORENS
- Participant assidu
- Date d'inscription: 12 Nov 2008
- Messages: 231
Re: QGIS 1.8 (Windows) : Selection de polygone
Pour le compte du nombre de points par poly, il faut utiliser la fonction Vecteur / Outils d'analyse / points par polygones.
Par contre c'est pour la fusion que c'est compliqué. Soit comme le préconise artiz, tu fais au cas par cas avec l'outil de fusion, mais ça peut être très long si tu plusieurs dizaines de polygones à assembler 2 par 2, soit tu arrives, à partir de ta couche nettoyée issue de l'union, à faire remonter par une jointure spatiale (joindre les attributs par localisation) une information sur tes polygones se superposant qui va te permettre d'utiliser la fonction vecteur/outils de géotraitement/regrouper qui s'appuie sur une valeur d'attribut commune pour faire les fusions.
JPL
Hors ligne
#12 Tue 27 August 2013 10:20
- JP LLORENS
- Participant assidu
- Date d'inscription: 12 Nov 2008
- Messages: 231
Re: QGIS 1.8 (Windows) : Selection de polygone
Autre solution pour la fusion :
tu sélectionnes tous les polys qui s’intersectent, tu utilises l'outil de fusion cité ci -dessus, tu vas obtenir un objet de type multipolygone, et ensuite tu appliques sur cet objet la fonction vecteur/outils de géométrie/ morceau multiples vers morceaux uniques. => tu exploses ton multipolygone en N poly uniques. Inconvénient, tu perds toutes les valeurs des attributs que tu as fusionnés en un seul ...
Dernière modification par JP LLORENS (Tue 27 August 2013 10:21)
Hors ligne
#13 Tue 27 August 2013 10:32
- artiz
- Participant actif
- Date d'inscription: 29 May 2013
- Messages: 64
Re: QGIS 1.8 (Windows) : Selection de polygone
J'avais pas penser à ta dernière solution JP. Mais si on recherche un résultat purement géometrique c'est très pratique.
Hors ligne
#14 Tue 27 August 2013 12:01
- GAILLOT Alexis
- Participant actif
- Lieu: REMIREMONT
- Date d'inscription: 26 Mar 2009
- Messages: 53
Re: QGIS 1.8 (Windows) : Selection de polygone
Merci infiniment, cela marche parfaitement.
Par contre, après avoir sélectionné les entités qui se chevauchent parmi toutes les entités de la couche, lorsque j'utilise l'outil "fusionner les entités sélectionnées", curieusement il prend aussi les entités hors sélection (celles qui n'en chevauchent aucune).
Je suis donc passé par une étape intermédiaire de création d'un fichier vecteur à partir de la sélection, et j'applique votre technique sur ce nouveau shape (fusion des entités, puis "morceaux multiples vers morceaux uniques").
Au final, des attributs on tout de même été gardés, mais ici ma problématique est purement géométrique.
L'étape finale consiste à faire avec un outil la somme des attributs "logement" des points initiaux, dans chaque polygone. Je ne connais pas parfaitement QGIS, mais j'ai l'impression que "Joindre les attributs par localisation" convient.
Méthode approuvée ! Merci à tous pour vos conseils. Cordialement, Alexis GAILLOT
Hors ligne