#1 Wed 19 June 2024 09:36
- benjamin_68
- Participant assidu
- Lieu: Lapoutroie
- Date d'inscription: 3 May 2010
- Messages: 200
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: 2919
- 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: 200
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: 2919
- 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: 3178
- 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: 260
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