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

Printemps des cartes 2024

#1 Tue 25 May 2021 17:07

MLsig
Juste Inscrit !
Date d'inscription: 3 May 2021
Messages: 4

QGIS: polygon/lines values to points

Bonjour à tous,

J'aurais besoin de récupérer dans une shape de points les valeurs de plusieurs couches lignes et polygones en intersection. J'ai cependant deux contraintes qui m'empêchent d'utiliser l'outil classique "joindre les attributs par localisation"

- Il faudrait que les valeurs des lignes et polygones qui touchent les points soient ajoutées dans des champs qui existent déjà (et qui sont vides), ce qui amène j'imagine à utiliser la calculatrice de champs ;
- Comme mes points ne touchent pas toujours exactement les lignes/polygones, j'aimerais pouvoir ajouter un valeur de "tolérance" (ex : si un point se trouve à moins de 20m d'un polygone, on récupère dans la table la valeur du polygone le plus proche, sinon on laisse NA)


La fonction geomwithin de refFunction pourrait fonctionner, mais elle ne possède pas de variable "tolérance" en entrée.

Merci d'avance de votre aide !

Hors ligne

 

#2 Tue 25 May 2021 18:19

SANTANNA
Moderateur
Lieu: Angers
Date d'inscription: 18 Jan 2008
Messages: 3807

Re: QGIS: polygon/lines values to points

Bonjour,
Peut-être avec overlay_nearest (pour QGIS >=3.16)

Hors ligne

 

#3 Tue 15 June 2021 18:03

MLsig
Juste Inscrit !
Date d'inscription: 3 May 2021
Messages: 4

Re: QGIS: polygon/lines values to points

Bonjour,

Merci pour cette indication. En effet, overlay_nearest fonctionne bien pour récupérer la valeur de l'entité la plus proche.

Par contre, quand on souhaite simplement récupérer la valeur du polygone croisant le point (et non la valeur du polygone le plus proche), il n'est plus possible d'utiliser cette fonction. J'aimerais par exemple récupérer le nom de la commune dans laquelle se trouvent mes points, mais certains points sont en mer, et il faudrait donc que le champ reste sur NULL. Pour ce type de jointure, la fonction geomwithin de reFfunctions semble parfaite, mais elle est très très lente pour des jeux de données de taille importante (elle fait crasher mon QGIS avec une shape de 60 000 lignes). Auriez-vous une solution similaire moins gourmande en mémoire ?

Hors ligne

 

#4 Wed 16 June 2021 11:14

SANTANNA
Moderateur
Lieu: Angers
Date d'inscription: 18 Jan 2008
Messages: 3807

Re: QGIS: polygon/lines values to points

Bonjour,

Par contre, quand on souhaite simplement récupérer la valeur du polygone croisant le point (et non la valeur du polygone le plus proche), il n'est plus possible d'utiliser cette fonction.


J'en doute. S'ils se croisent, la distance est 0 donc toujours une des plus proches. Autrement, regardez les autres fonctions overlay_... et surtout les paramètres qu'ils prennent.
Pour refFunctions, il me semble bien que la doc indique ces limitations et conseille notamment un seuil de données.

Hors ligne

 

Pied de page des forums

Powered by FluxBB