Par défaut, l'API Routes Compute Routes
calcule un itinéraire passant par plusieurs arrêts, appelés points de cheminement avec escale,
l'ordre dans lequel vous les fournissez.
Vous pouvez faire en sorte que l'API Routes optimise la route fournie en réorganisant les arrêts dans un ordre plus efficace. Optimisation des points de cheminement pour les trajets temps, mais il tient également compte d'autres facteurs tels que la distance et le nombre de virages lorsque de décider quel itinéraire est le plus efficace.
Pour optimiser les points de cheminement
Assurez-vous qu'aucun point de cheminement de l'itinéraire n'est défini sur
true
pourvia
Exemple:{"address": "Clare,SA", "via": true}
. Pour en savoir plus sur des points de cheminement intermédiaires, consultez Spécifiez des points de cheminement intermédiaires.Assurez-vous que
routing_preference
n'est pas défini surTRAFFIC_AWARE_OPTIMAL
.Définissez
optimize_waypoint_order
surtrue
. Exemple :"optimizeWaypointOrder": "true",
Spécifiez le champ
routes.optimizedIntermediateWaypointIndex
dans le champ. masque:REST
-H X-Goog-FieldMask: routes.optimizedIntermediateWaypointIndex
RPC
const (fieldMask = "routes.optimizedIntermediateWaypointIndex")
Découvrez comment optimiser l'ordre des points de cheminement
Voici comment l'API Routes optimise l'ordre des points de cheminement sur un itinéraire:
Indexe automatiquement les points de cheminement en fonction de l'ordre dans lequel vous les indiquez dans la requête, en commençant par 0.
Optimise l'ordre des points de cheminement en utilisant les numéros d'index qu'elle attribué aux points de cheminement dans la requête.
Renvoie l'ordre optimisé des points de cheminement dans l'objet
routes
, dans lawaypoint_order
, sousroutes.optimizedIntermediateWaypointIndex
.
Exemple
Cette demande porte sur l'optimisation d'un itinéraire au départ d'Adélaïde, en Australie-Méridionale dans chacune des principales régions viticoles d'Australie-Méridionale, avant de retourner à Adélaïde.
curl -X POST -H 'content-type: application/json' -d ' { "origin": { "address": "Adelaide,SA" }, "destination": { "address": "Adelaide,SA" }, "intermediates": [ {"address": "Barossa+Valley,SA"}, {"address": "Clare,SA"}, {"address": "Coonawarra,SA"}, {"address": "McLaren+Vale,SA"} ], "travelMode": "DRIVE", "optimizeWaypointOrder": "true" }' \ -H 'Content-Type: application/json' \ -H 'X-Goog-Api-Key: YOUR_API_KEY' \ -H 'X-Goog-FieldMask: routes,geocodingResults.intermediates.intermediateWaypointRequestIndex' \ 'https://routes.googleapis.com/directions/v2:computeRoutes'
L'API Routes indexe les points de cheminement intermédiaires fournis dans le à partir de 0. Exemple :
0 {"address": "Barossa+Valley,SA"}, 1 {"address": "Clare,SA"}, 2 {"address": "Coonawarrav,SA"}, 3 {"address": "McLaren+Vale,SA"}
En utilisant les numéros d'index des quatre points de cheminement fournis dans la requête, puis renvoie l'ordre optimisé:
"optimizedIntermediateWaypointIndex": [ 3, 2, 0, 1 ]