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

GEODATA DAYS 2024

#1 Wed 19 June 2024 09:36

benjamin_68
Participant assidu
Lieu: Lapoutroie
Date d'inscription: 3 May 2010
Messages: 198

distance entre 2 points le long d'une ligne

Bonjour,

Je travaille sur des itinéraires pédestres, et je cherche à calculer la distance entre 2 points, en suivant ces itinéraires.
J'ai beaucoup de distances à calculer et je n'imagine pas calculer ces distances manuellement.

Quelqu'un connaît-il un outil, sur QGIS ou en ligne, qui permet de faire cela ?

Mille mercis,
Benjamin

Hors ligne

 

#2 Wed 19 June 2024 14:26

Pascal Boulerie
Participant assidu
Lieu: France
Date d'inscription: 12 Sep 2005
Messages: 2911
Site web

Re: distance entre 2 points le long d'une ligne

Avec un algorithme de plus court chemin, entre ces deux points donnés ?

Et en tenant compte des dénivelés ??


« L'État est désormais quasi déliquescent. » (José Cohen-Aknine, ingénieur X-Ponts, IGPEF, dans Déliquescence et renaissance de l'État.)

Hors ligne

 

#3 Wed 19 June 2024 14:47

benjamin_68
Participant assidu
Lieu: Lapoutroie
Date d'inscription: 3 May 2010
Messages: 198

Re: distance entre 2 points le long d'une ligne

J'ai un seul itinéraire sur lequel je veux faire des calculs, il n'y a donc pas de branches à mon réseau. C'est une ligne continue et unique.

Je n'ai pas besoin du dénivelé.
L'idée est de pouvoir calculer les distances depuis chaque carrefour (lieux où seront implantés des panneaux directionnels) vers les différents villages traversés...

Hors ligne

 

#4 Wed 19 June 2024 15:35

Pascal Boulerie
Participant assidu
Lieu: France
Date d'inscription: 12 Sep 2005
Messages: 2911
Site web

Re: distance entre 2 points le long d'une ligne

(En cherchant dans les archives, j'ai vu une ancienne réponse ici à propos de v.net pour calculer un itinéraire : https://georezo.net/forum/viewtopic.php … 85#p264585 )


Calcul d'itinéraires dans GRASS à partir de QGis ?

https://grass.osgeo.org/grass83/manuals … tance.html


« L'État est désormais quasi déliquescent. » (José Cohen-Aknine, ingénieur X-Ponts, IGPEF, dans Déliquescence et renaissance de l'État.)

Hors ligne

 

#5 Fri 21 June 2024 11:33

ChristopheV
Membre
Lieu: Ajaccio
Date d'inscription: 7 Sep 2005
Messages: 3173
Site web

Re: distance entre 2 points le long d'une ligne

Bonjour,

Tout est une question de définition et de modélisation.
Vous cherchez en fait à calculer la longueur d'un segment de polyligne, segment correspondant à une portion de la polyligne.

Vous possédez une itinéraire représenté par une unique polyligne.

Etape 1 : Créer une couche de "découpe" qui identifie tout vos carrefours, pour pouvoir couper la polyligne initiale en n polylignes.

Etape 2 Mesurer la longueur des polylignes obtenues. Via st_length(geom) par exemple.

Bonne journée.


Christophe
L'avantage d'être une île c'est d'être une terre topologiquement close

Hors ligne

 

#6 Wed 26 June 2024 14:36

YoLecomte
Participant assidu
Lieu: Epinal
Date d'inscription: 7 Jul 2015
Messages: 252

Re: distance entre 2 points le long d'une ligne

Bonjour,

Si j'ai bien compris la demande, la solution de ChristopheV ne convient pas car tu cherches la distance cumulée a travers l'ensemble des carrefours traversés vers le village cible. Ici tu n'auras que la distance entre chaque carrefour...

Je pense que tu peux t'en sortir avec cet enchainement de traitement:

1 - Algorithme Chemin le plus court (de la couche vers le point) [ID native:shortestpathlayertopoint].
Il te suffit d'utiliser ta couche de carrefour pour points de départ et de venir cliquer sur le village pour l'arrivée.
L'algorithme te générera une couche de linéaire (chaque lignes correspondant au trajet depuis le carrefour vers le village) avec un champ 'cost' correspondant à la distance associée en mètres (pour peux que tu travailles avec un SCR projeté en mètres).

2 - Extraire les sommets [ID native:extractvertices] de cette couche et ne garder que ceux dont le vertex_index = 0 correspondant au premier vertex de la ligne de trajet (donc ton carrefour qui est le point de départ).

3- Il te suffiras ensuite de joindre les attributs par localisation [ID native:joinattributesbylocation] entre ces deux couches pour ramener la distance dans ta couche de carrefour.

4 - Répéter pour chaque village cible.


Sinon ca peut aussi se faire avec quelques lignes de python...

Hors ligne

 

Pied de page des forums

Powered by FluxBB