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

GeoDataDays 2025

#1 Mon 18 October 2021 17:53

g denis
Participant occasionnel
Date d'inscription: 5 May 2020
Messages: 30

QGIS 3.16: Mise a Jour automatique de mes longueurs de reseaux

Bonjour,
Je travaille depuis un moment sur des couches de mon réseau d'eau potable qui ont été créées il y a 7 ans.
Il y a un attribut dans la couche  qui renseigne la longueur d'un tronçon "Shape_Leng".
Seulement, cet attribut est écrit en "dur" et est donc invariant.
J'utilise donc l'info que l'on a dans "dérivé" quand je lis les infos sur un tronçon et qui se met à jour automatiquement.

Ma question est : es-ce qu'il existe une possibilité de faire recopier la variable qui est dans dérivé automatiquement dans "Shape_Leng"?

Ou bien un autre moyen de renseigner automatiquement la longueur dans "Shape_Leng"?

Merci!!

Hors ligne

 

#2 Mon 18 October 2021 19:20

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

Re: QGIS 3.16: Mise a Jour automatique de mes longueurs de reseaux

Bonjour,
Vous pouvez obtenir cette même information avec l'expression $length (ou length($geometry), désolé je ne sais plus exactement lequel est le plus précis) calculé dans un champ. Ce champ peut être calculé dynamiquement avec cette expression mise par défaut

Hors ligne

 

#3 Wed 03 November 2021 15:08

g denis
Participant occasionnel
Date d'inscription: 5 May 2020
Messages: 30

Re: QGIS 3.16: Mise a Jour automatique de mes longueurs de reseaux

Bonjour,

Merci pour ce retour, c'est exactement ce que je recherchais. Par contre, en utilisant la valeur par défaut, je pense qu'il faut une modification des tronçons en passant par la valeur par défaut.

Je vais voir ça à l'utilisation.

Encore merci pour le retour!

Hors ligne

 

#4 Thu 04 November 2021 08:53

aheurion
Participant actif
Lieu: NANTES
Date d'inscription: 8 Oct 2020
Messages: 143

Re: QGIS 3.16: Mise a Jour automatique de mes longueurs de reseaux

Bonjour,
Et en utilisant un champ virtuel ? Avec un nouveau champ virtuel "LONGUEUR" et l'expression $length, la valeur sera toujours à jour même sans modification de l'entité si je me trompe pas.

Hors ligne

 

#5 Thu 04 November 2021 09:41

g denis
Participant occasionnel
Date d'inscription: 5 May 2020
Messages: 30

Re: QGIS 3.16: Mise a Jour automatique de mes longueurs de reseaux

Bonjour,

Oui, cette solution fonction très bien aussi, merci!!!

Justement en faisant des calculs ce matin, j'ai vu que cette option de champ virtuel dans la calculatrice de champs et la possibilité d'y ajouter "length" ou "$length".

Pour info, "$length" est la longueur ellipsoïdale et "length" est la longueur plane.

Hors ligne

 

#6 Tue 09 November 2021 18:15

etienne67
Juste Inscrit !
Date d'inscription: 4 Aug 2016
Messages: 4

Re: QGIS 3.16: Mise a Jour automatique de mes longueurs de reseaux

Bonjour,

2 compléments d'infos:
- il est préférable d'utiliser une valeur par défaut mise en place dans le formulaire d'attribut, plutôt que d'utiliser un champ virtuel, car comme son nom l'indique, un champ virtuel n'est pas stocké dans la source de la couche (par exemple, si votre couche est en SHP, le fichier SHP ne contiendra pas ce champ virtuel)
- concernant le calcul automatique $length, la longueur calculée par cette fonction respecte les paramètres d’ellipsoïde du projet ainsi que les unités de distances. Ainsi, si un ellipsoïde a été paramétré pour le projet alors la longueur sera ellipsoïdale, sinon, elle sera calculée selon un plan. Donc $length peut aussi donner une distance plane, tout dépend du paramétrage du projet.

Hors ligne

 

#7 Wed 10 November 2021 08:21

g denis
Participant occasionnel
Date d'inscription: 5 May 2020
Messages: 30

Re: QGIS 3.16: Mise a Jour automatique de mes longueurs de reseaux

Bonjour,
Merci pour ce complément d'infos.
Le champs virtuel est donc utile pour un calcul ou des données sur le projet.
Par contre dans le cadre de l'export, il ne sera pas pris en compte car absent de la couche.

Dès lors, y aurait-il une possibilité de copier les valeurs du champs virtuel sur la couche longueur de manière à mettre à jour la couche avec des valeurs correctes? Sachant que ces valeurs seront modifiées de manière automatique par la suite s'il y a édition du tronçon, à l'aide de la fonction "valeur par défaut"??

Merci.

Hors ligne

 

#8 Wed 10 November 2021 09:48

aheurion
Participant actif
Lieu: NANTES
Date d'inscription: 8 Oct 2020
Messages: 143

Re: QGIS 3.16: Mise a Jour automatique de mes longueurs de reseaux

Bonjour,
Si tu utilises une valeur par défaut (avec l'expression $length en cochant bien l'option "appliquer la valeur par défaut sur la mise à jour") tu n'as plus besoin de champ virtuel du tout. Dans ce cas avec la calculatrice de champs tu mets ton champs LONGUEUR à jour avec l'expression $length une fois et puis voilà.

Hors ligne

 

#9 Sat 13 November 2021 15:39

HANCZYK JM
Participant actif
Lieu: Châlons en Champagne
Date d'inscription: 14 Aug 2011
Messages: 144
Site web

Re: QGIS 3.16: Mise a Jour automatique de mes longueurs de reseaux

g denis a écrit:

Bonjour,
Merci pour ce complément d'infos.
Le champs virtuel est donc utile pour un calcul ou des données sur le projet.
Par contre dans le cadre de l'export, il ne sera pas pris en compte car absent de la couche.

Dès lors, y aurait-il une possibilité de copier les valeurs du champs virtuel sur la couche longueur de manière à mettre à jour la couche avec des valeurs correctes? Sachant que ces valeurs seront modifiées de manière automatique par la suite s'il y a édition du tronçon, à l'aide de la fonction "valeur par défaut"??

Merci.


vous pouvez enregistrer un QML avec le même nom du SHP qui gardera le champ virtuel


Jm Hanczyk

Hors ligne

 

Pied de page des forums

Copyright Association GeoRezo