Annonce
Suite à un problème technique intervenu entre le 22 et le 23 mars, nous avons du procéder dans la soirée du 25 mars, à la restauration de la base de données du 24 mars (matinée).
En clair, nous avons perdu vos contributions et inscriptions du dimanche 24 et du lundi 25 mars.
Nous vous prions de nous excuser.
#1 Fri 08 February 2019 17:18
- conejo
- Participant assidu
- Lieu: Lunel
- Date d'inscription: 2 Dec 2005
- Messages: 1606
QGIS: Point le plus proche
Bonjour,
Je dois spécifier pour chaque adresse pour mon intercommunalité, le point d'apport volontaire le plus proche.
Comment y parvenir?
Hors ligne
#2 Fri 08 February 2019 17:43
- carteq
- Participant assidu
- Date d'inscription: 8 Mar 2008
- Messages: 829
Re: QGIS: Point le plus proche
En SQL, via le DB Manager, ça devrait ressembler à
Code:
Select A.ID, min(St_distance(A.geometry, B.geometry)) as Dist from intercomm as A, pt_app_vol as B GROUP BY A.ID
Vous pouvez remplacer ID par le champ qui contient l'identifiant ou le nom de l'intercommunauté
Dernière modification par carteq (Fri 08 February 2019 17:45)
Hors ligne
#3 Sun 10 February 2019 12:39
- conejo
- Participant assidu
- Lieu: Lunel
- Date d'inscription: 2 Dec 2005
- Messages: 1606
Re: QGIS: Point le plus proche
je suis novice avec DB Manager. Il est bien installé mais je ne sais comment le faire fonctionner...
Hors ligne
#4 Mon 11 February 2019 10:12
- SANTANNA
- Moderateur
- Lieu: Angers
- Date d'inscription: 18 Jan 2008
- Messages: 3789
Re: QGIS: Point le plus proche
Bonjour,
Voir aussi l'extension NNjoin
Hors ligne
#5 Mon 11 February 2019 10:15
Re: QGIS: Point le plus proche
Bonjour,
La solution de carteq peut être reportée dans les couches virtuelles : Couche > Ajouter une couche virtuelle.
Autrement, voici une solution qgis sans SQL, à utiliser dans le calculateur d'expression
Suppose d'avoir une couche pav avec champ libelle
Expression à insérer au niveau de la couche point (et pas pav)
Code:
with_variable('mindistance', aggregate('pav', 'min', distance($geometry, geometry(@parent))), aggregate('pav', 'concatenate',"libelle", filter:=distance($geometry, geometry(@parent)) = @mindistance))
geodata au cerema et petits billets en géomatique
Hors ligne
#6 Mon 11 February 2019 10:58
- ChristopheV
- Membre
- Lieu: Ajaccio
- Date d'inscription: 7 Sep 2005
- Messages: 3163
- Site web
Re: QGIS: Point le plus proche
Bonjour,
La solution SQL est différente de celle proposée plus haut :
Il faut utiliser la notion de plus proche voisin, ou KNN (K nearest neighbor). Voir ici :
https://postgis.net/docs/geometry_distance_knn.html
Christophe
L'avantage d'être une île c'est d'être une terre topologiquement close
Hors ligne