Nous utilisons des cookies pour vous garantir la meilleure expérience sur notre site. Si vous continuez à utiliser ce dernier, nous considèrerons que vous acceptez l'utilisation des cookies. J'ai compris ! ou En savoir plus !.
banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

Rencontres QGIS 2025

L'appel à participation est ouvert jusqu'au 19 janvier 2025!

#1 Mon 16 April 2018 14:25

Sylvain M.
Participant assidu
Lieu: Saint-Pierre-des-Nids (53)
Date d'inscription: 8 Sep 2005
Messages: 995

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: 3945

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: 995

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

 

Pied de page des forums

Powered by FluxBB