הגדרת ציוני דרך ברמת הביניים

מפתחים באזור הכלכלי האירופי (EEA)

נקודות ציון ביניים הן מיקומים שמוגדרים בין נקודת היציאה ליעד, שאתם רוצים שהמסלול יעבור דרכם.

אפשר להגדיר עד 25 נקודות עצירה ביניים בבקשה אחת באמצעות מאפיין המערך intermediates של שיטת REST‏ computeRoutes או שיטת gRPC‏ ComputeRoutes.

עצירות ביניים לעומת נקודות ציון למעבר

אפשר להגדיר נקודת ציון ביניים כנקודת עצירה או כנקודה למעבר:

  • עצירה: כברירת מחדל, הרכב עוצר במיקום. כל נקודת עצירה מחלקת את המסלול על ידי הוספת רשומה של RouteLeg למערך legs בתשובה. מידע נוסף מופיע במאמר הגדרת עצירה לאורך מסלול.
  • נקודת ציון למעבר עם "via" שמוגדר כ-true: הרכב עובר דרך המיקום בלי לעצור. נקודות ציון למעבר לא מוסיפות רשומות למערך legs. מידע נוסף מופיע במאמר הגדרת נקודה למעבר במסלול.

קטעי מסלול ונקודות ציון ביניים

לכל עצירת ביניים בבקשה, התשובה מכילה אובייקט RouteLeg נפרד במערך routes.legs.

לדוגמה, מסלול עם נקודת מוצא, עצירת ביניים ויעד מכיל שני קטעי מסלול: * קטע 1: מנקודת המוצא לעצירת הביניים. * קטע 2: מעצירת הביניים ליעד. ‫* Leg 2: From the intermediate stopover to the destination.

דוגמה: בקשה עם נקודת ציון ביניים

בדוגמה הבאה נעשה שימוש במערך intermediates כדי להוסיף עצירה אחת בדרך למסלול.

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'

תשובה עם כמה מקטעי מסלול

מכיוון שנקודת הביניים בבקשה היא עצירה שלא מוגדרת בה "via": true, התגובה מחלקת את המסלול לשני קטעים במערך 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
            }
          }
        }
      ]
    }
  ]
}