Standardmäßig hat die Routes API Compute Routes
berechnet eine Route über mehrere Haltestellen, sogenannte Wegpunkte mit Aufenthalt.
in der Reihenfolge, in der Sie sie angeben.
Die Routes API kann die angegebene Route optimieren, indem Sie die in einer effizienteren Reihenfolge angehalten werden. Wegpunktoptimierung für Reisen Dabei werden auch andere Faktoren wie die Entfernung und die Anzahl der Abzweigungen berücksichtigt, welche Route am effizientesten ist.
Um Wegpunkte zu optimieren
Für keinen der Wegpunkte der Route darf
via
auftrue
gesetzt sein, Beispiel:{"address": "Clare,SA", "via": true}
. Weitere Informationen zu Wegpunkte finden Sie unter Wegpunkte angebenAchten Sie darauf, dass
routing_preference
nicht aufTRAFFIC_AWARE_OPTIMAL
festgelegt ist.Setzen Sie
optimize_waypoint_order
auftrue
. Beispiel:"optimizeWaypointOrder": "true",
Geben Sie das Feld
routes.optimizedIntermediateWaypointIndex
in dem Feld an. Maske:REST
-H X-Goog-FieldMask: routes.optimizedIntermediateWaypointIndex
RPC
const (fieldMask = "routes.optimizedIntermediateWaypointIndex")
Optimierung der Wegpunktreihenfolge
So optimiert die Routes API die Reihenfolge der Wegpunkte in einer Route:
Indexiert automatisch Wegpunkte basierend auf der von Ihnen angegebenen Reihenfolge in der Anfrage, beginnend mit 0.
Optimiert die Reihenfolge der Wegpunkte mithilfe der Indexnummern, die die den Wegpunkten in der Anfrage zugewiesen sind.
Gibt die optimierte Wegpunktreihenfolge im
routes
-Objekt zurück, Feldwaypoint_order
unterroutes.optimizedIntermediateWaypointIndex
Beispiel
Diese Anfrage fordert die Optimierung einer Route aus Adelaide, South Australia, in jede der wichtigsten Weinregionen Südaustraliens und kehren dann nach Adelaide zurück.
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'
Die Routes API indexiert die Wegpunkte aus der Anfrage, beginnend bei 0. Beispiel:
0 {"address": "Barossa+Valley,SA"}, 1 {"address": "Clare,SA"}, 2 {"address": "Coonawarrav,SA"}, 3 {"address": "McLaren+Vale,SA"}
Unter Verwendung der Indexnummern für die vier in der Anforderung angegebenen Wegpunkte wird der gibt der Dienst dann die optimierte Reihenfolge zurück:
"optimizedIntermediateWaypointIndex": [ 3, 2, 0, 1 ]