Pages: 1
- Sujet précédent - QGIS: Filtre d Entite spatial (ou jointure spatiale dynamique) ? - Sujet suivant
#1 Mon 16 April 2018 14:25
- Sylvain M.
- Participant assidu
- Lieu: Saint-Pierre-des-Nids (53)
- Date d'inscription: 8 Sep 2005
- Messages: 992
QGIS: Filtre d Entite spatial (ou jointure spatiale dynamique) ?
Bonjour,
Je souhaiterais filtrer une couche selon l'emprise spatiale d'une autre couche, sans avoir à créer une nouvelle couche (virtuelle ou non).
Exemple (fictif) : n'afficher que les lieudits d'une commune (en partant du principe que la couche lieudits n'a pas de référence attributaire communale).
Je crois avoir déjà lu différentes méthodes pour parvenir à mes fins, mais je ne les retrouve pas.
Est-ce que quelqu'un aurait une proposition ?
En SQL (dans le gestionnaire de BDD), cela reviendrait à quelque chose de ce genre :
Code:
SELECT lieudits.* FROM lieudits JOIN communes ON ST_INTERSECTS(lieudits.geometry, communes.geometry) WHERE communes.nom = 'ma commune'
Si c'était possible sans passer par une couche virtuelle, ça m'arrangerait.
Merci pour vos conseils !
Sylvain M.
Dernière modification par Sylvain M. (Mon 16 April 2018 14:26)
Sylvain M.
Hors ligne
#2 Mon 16 April 2018 17:33
- SANTANNA
- Moderateur
- Lieu: Angers
- Date d'inscription: 18 Jan 2008
- Messages: 3881
Re: QGIS: Filtre d Entite spatial (ou jointure spatiale dynamique) ?
Bonjour,
Qu'entends-tu par "filtrer": n'avoir plus que ces entités dans ta couche (comme si tu passais par l'onglet Général des propriétés) ou pouvoir ne sélectionner/manipuler que ces entités?
Si cas 2:
Dans la boîte à outils Traitements, tu as un algorithme "Sélection par localisation" qui fait le job, je pense (en mode interactif, donc).
Il y a aussi, via le chemin des expressions les fonctions d'analyse spatiale de l'extension refFunctions (à explorer, je ne me souviens plus quelles limitations il y a). Et peut-être qu'il y a des extensions pour ce genre de sélection directement; as-tu regardé?
Hors ligne
#3 Wed 09 October 2019 10:31
- Sylvain M.
- Participant assidu
- Lieu: Saint-Pierre-des-Nids (53)
- Date d'inscription: 8 Sep 2005
- Messages: 992
Re: QGIS: Filtre d Entite spatial (ou jointure spatiale dynamique) ?
Désolé pour le délai de réponse, je n'avais pas activé l'abonnement au sujet, et j'avais donc zappé ta réponse.
Effectivement, la sélection par localisation répond à mon besoin, mais elle nécessite de créer une nouvelle couche ensuite si on veut, par exemple :
- n'afficher que les entités sélectionnées,
- calculer des statistiques sur cette sélection,
- faire une symbologie uniquement sur cette sélection, ...
Alors que, avec le filtre d'entités de l'onglet général d'une couche, c'est très pratique de faire cela sur des sous-ensemble de données. Mais il n'est alors possible que de filtrer sur les attributs. Les filtres spatiaux sont a priori absents.
Je viens de le faire avec le gestionnaire de BDD une requête SQL (ST_Intersects), puis en chargeant le résultat dans une nouvelle couche virtuelle.
C'est déjà pas mal, mais si je pouvais filtrer à la base, ce serait encore mieux !
Sylvain M.
Hors ligne
Pages: 1
- Sujet précédent - QGIS: Filtre d Entite spatial (ou jointure spatiale dynamique) ? - Sujet suivant