Wegpunkte entlang der Route sind Orte zwischen Start- und Zielort, die auf der Route liegen sollen. Ein Zwischenwegpunkt kann eine Haltestelle sein oder Sie können ihn als Durchfahrtsort angeben. Ein Beispiel für einen Wegpunkt für einen Stopp finden Sie unter Stopp auf einer Route festlegen. Ein Beispiel für einen Durchgangspunkt finden Sie unter Durchgangspunkt für eine Route festlegen.
Verwenden Sie die Array-Eigenschaft intermediates
der Methode computeRoutes (REST) oder der Methode ComputeRoutes (gRPC), um bis zu 25 Zwischenziele zu definieren.
Für jeden Zwischenstopp in der Anfrage wird dem Route-Objekt (REST) oder Route-Objekt (gRPC) in der Antwort ein Eintrag im legs
-Array hinzugefügt, um die Details für diesen Abschnitt der Reise bereitzustellen.
Jeder Abschnitt einer Route wird durch ein RouteLeg-Objekt (REST) oder ein RouteLeg-Objekt (gRPC) dargestellt.
Mit der Antwortfeldmaske können Sie steuern, welche RouteLeg
-Felder zurückgegeben werden.
Beispiel: Zwischenziel festlegen
Im folgenden Beispiel wird mit dem Arrayattribut intermediates
ein einzelner Zwischenstopp in den POST-Anfragetext einer Route eingefügt.
In diesem Beispiel wird eine Antwortfeldmaske im Header X-Goog-FieldMask
verwendet, mit der angegeben wird, dass die folgenden Felder in der Antwort zurückgegeben werden sollen:
routes.duration
routes.distanceMeters
routes.legs
, das dem gesamtenRouteLeg
-Objekt entspricht.
curl -X POST -d '{ "origin":{ "location":{ "latLng":{ "latitude": 37.419734, "longitude": -122.0827784 } }, "sideOfRoad": true }, "destination":{ "location":{ "latLng":{ "latitude": 37.417670, "longitude": -122.079595 } } }, "intermediates": [ { "location":{ "latLng":{ "latitude": 37.419734, "longitude": -122.0807784 } } } ], "travelMode": "DRIVE", "routingPreference": "TRAFFIC_AWARE", "departureTime": "2022-10-15T15:01:23.045123456Z", "computeAlternativeRoutes": false, "routeModifiers": { "avoidTolls": false, "avoidHighways": false, "avoidFerries": false }, "languageCode": "en-US", "units": "IMPERIAL" }' -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'
Die Antwort auf diesen Aufruf enthält das legs
-Array. Jeder Schritt des Legs wird durch ein RouteLegStep-Objekt (REST) oder ein RouteLegStep-Objekt (gRPC) dargestellt.
{ "routes": [ { "legs": [ # First leg { "distanceMeters": 207, "duration": "89s", "staticDuration": "89s", "polyline": { "encodedPolyline": "ipkcFjgchVd@@@cF]@@oCK?" }, "startLocation": { "latLng": { "latitude": 37.4197318, "longitude": -122.0826233 } }, "endLocation": { "latLng": { "latitude": 37.419734, "longitude": -122.08077919999998 } }, "steps": [ { "distanceMeters": 21, "staticDuration": "6s", "polyline": { "encodedPolyline": "ipkcFjgchVd@@" }, "startLocation": { "latLng": { "latitude": 37.4197318, "longitude": -122.0826233 } }, "endLocation": { "latLng": { "latitude": 37.41954, "longitude": -122.08262750000002 } } }, ... }, # Second leg { "distanceMeters": 598, "duration": "159s", "staticDuration": "159s", "polyline": { "encodedPolyline": "ipkcFz{bhVh@??{@xPBP?J}E{E?" }, "startLocation": { "latLng": { "latitude": 37.419734, "longitude": -122.08077919999998 } }, "endLocation": { "latLng": { "latitude": 37.417616599999995, "longitude": -122.07938820000001 } }, "steps": [ { ...