Wegpunkte festlegen

Wegpunkte sind Orte zwischen Start- und Zielort. die die Route durchlaufen soll. Ein Wegpunkt kann eine Haltestelle oder können Sie ihn als Standort für die Weiterleitung angeben. Beispiel für einen Wegpunkt Stoppen entlang einer Route festlegen Ein Beispiel für eine Wegpunkt zur Durchgangsstelle, Punkt für eine Durchfahrtsroute festlegen

Verwenden Sie das Array-Attribut intermediates der computeRoutes-Methode (REST) oder die ComputeRoutes -Methode (gRPC), um bis zu 25 Zwischenwegpunkte zu definieren.

Für jeden Wegpunkt in der Anfrage Route Object (REST) oder Route Object (gRPC) in der Antwort einen Eintrag zum legs-Array hinzufügt, um die Details für diesen Abschnitt der Reise.

Jeder Abschnitt einer Route wird durch ein RouteLeg (REST) oder Objekt RouteLeg (gRPC). Steuern Sie, welche RouteLeg-Felder zurückgegeben werden, indem Sie Antwortfeldmaske.

Beispiel – Wegpunkt festlegen

Im folgenden Beispiel wird mit dem Array-Attribut intermediates ein einzelnes Zwischenwegpunkt zum POST-Anfragetext einer Route.

In diesem Beispiel wird im X-Goog-FieldMask-Header eine Antwortfeldmaske verwendet. gibt an, dass die folgenden Felder in der Antwort zurückgegeben werden sollen:

  • routes.duration
  • routes.distanceMeters
  • routes.legs, der dem gesamten RouteLeg-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 Array legs. Jeder Schritt des Beins dargestellt durch ein RouteLegStep (REST) oder Objekt RouteLegStep (gRPC).

{
  "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": [
                {
                  ...