Les points de cheminement intermédiaires sont des lieux spécifiés entre le point de départ et la destination par lesquels vous souhaitez que l'itinéraire passe.
Vous pouvez définir jusqu'à 25 points de chemin intermédiaires dans une seule requête à l'aide de la propriété de tableau intermediates de la méthode REST computeRoutes ou de la méthode gRPC ComputeRoutes.
Escales et points de cheminement de transit
Vous pouvez configurer un point de cheminement intermédiaire comme un point d'arrêt ou un lieu de passage :
- Escale : par défaut, le véhicule s'arrête à l'emplacement. Chaque point de cheminement avec arrêt divise l'itinéraire en ajoutant une entrée
RouteLegau tableaulegsdans la réponse. Pour en savoir plus, consultez Définir un arrêt sur un itinéraire. - Point de cheminement de passage avec
"via"défini surtrue: le véhicule traverse le lieu sans s'arrêter. Les points de cheminement de passage n'ajoutent pas d'entrées au tableaulegs. Pour en savoir plus, consultez Définir un point de passage pour un itinéraire.
Tronçons d'itinéraire et points de cheminement intermédiaires
Pour chaque arrêt intermédiaire d'une requête, la réponse contient un objet RouteLeg distinct dans le tableau routes.legs.
Par exemple, un itinéraire avec un point de départ, une étape intermédiaire et une destination contient deux sections : * Section 1 : du point de départ à l'étape intermédiaire. * Étape 2 : de l'escale intermédiaire à la destination.
Exemple : requête avec un point de chemin intermédiaire
L'exemple suivant utilise le tableau intermediates pour ajouter une seule étape intermédiaire à un itinéraire.
curl -X POST -d '{ "origin":{ "location":{ "latLng":{ "latitude": 37.419734, "longitude": -122.0827784 } } }, "destination":{ "location":{ "latLng":{ "latitude": 37.417670, "longitude": -122.079595 } } }, "intermediates": [ { "location":{ "latLng":{ "latitude": 37.419734, "longitude": -122.0807784 } } } ], "travelMode": "DRIVE" }' \ -H 'Content-Type: application/json' -H 'X-Goog-Api-Key: YOUR_API_KEY' \ -H 'X-Goog-FieldMask: routes.duration,routes.distanceMeters,routes.legs' \ 'https://routes.googleapis.com/directions/v2:computeRoutes'
Réponse avec plusieurs étapes d'itinéraire
Étant donné que le point de cheminement intermédiaire de la requête est une escale qui ne définit pas "via": true, la réponse divise l'itinéraire en deux étapes dans le tableau legs :
{ "routes": [ { "distanceMeters": 805, "duration": "248s", "legs": [ { "distanceMeters": 207, "duration": "89s", "startLocation": { "latLng": { "latitude": 37.4197318, "longitude": -122.0826233 } }, "endLocation": { "latLng": { "latitude": 37.419734, "longitude": -122.0807792 } } }, { "distanceMeters": 598, "duration": "159s", "startLocation": { "latLng": { "latitude": 37.419734, "longitude": -122.0807792 } }, "endLocation": { "latLng": { "latitude": 37.4176166, "longitude": -122.0793882 } } } ] } ] }