3-itinéraire routier
par
Grâce à la fonction Router de la bibliothèque pyroutelib3, il va être possible de générer automatiquement un itinéraire entre deux points donnés.
pour commencer
Ci-dessous un code permettant de voir le fonctionnement des fonctions relatives à Router ; copiez/collez-le dans Pyzo et faites-le fonctionner :
A faire : choisissez un autre lieu de départ et un autre lieu d’arrivée ; modifier le type de mode de circulation et observez.
distance
Il faut tout d’abord bien noter que dans ce programme, routeLatLons
est une liste qui stocke les coordonnées de nombreux points qui composent le parcours.
Dans cette bibliothèque, une fonction permet de calculer directement la distance entre deux points dont on connaît les coordonnées (latitude, longitude).
Sa syntaxe est : distance( coord(point) , coord(point suivant) )
.
A faire : créer une liste d[]
qui contiendra la distance entre deux points successifs du parcours, et une liste d_cum[]
qui contiendra la distance cumulée entre le point de départ et un point du parcours.
Aide : la fonction sum(d)
retourne la somme des valeurs contenues dans la liste d
.
marquage de l’itinéraire
On peut à présent marquer des points sur l’itinéraire donnant par exemple le cumul de la distance au fur et à mesure.
On rappelle :
- pour marquer un point :
folium.Circle((latitude, longitude), radius=2)
place un cercle de rayon 2 (un point) au lieu dont les coordonnées (latitude, longitude) sont précisées. -
d_cum=[i]
donne la valeur de la distance cumulée entre le point de départ et ième point du parcours. - pour indiquer du texte relatif à un point, on ajouter comme paramètre
popup=" texte "
dans la fonctionfolium.Circle
précédente.