یک نقطه برای عبور از آن تعیین کنید

به طور پیش فرض ، از ایستگاه های واسطه ای برای متوقف کردن وانت و قطره استفاده می شود ، اما همچنین می توانید مشخص کنید که یک نقطه راه میانی فقط برای عبور از آن منظور شده است.

مسیری که حاوی یک نقطه راه مبدا ، یک ایستگاه میانی عبور از طریق و یک نقطه راه مقصد فقط یک پا است که منشأ و مقصد را به هم متصل می کند ، در حالی که از طریق ایستگاه میانی (به نام A via ) عبور می کند.

با استفاده از Waypoint (REST) ​​یا Waypoint (gRPC)، یک نقطه بین میانی را برای تبدیل شدن به یک ایستگاه via true پیکربندی کنید.

ویژگی via هنگام ایجاد مسیرها در پاسخ به کشیدن نقاط بین راهی روی نقشه توسط کاربر بسیار مؤثر است. انجام این کار به کاربر این امکان را می دهد که ببیند مسیر نهایی در زمان واقعی چگونه به نظر می رسد و کمک می کند تا اطمینان حاصل شود که ایستگاه های بین راهی در مکان هایی قرار می گیرند که برای مسیرهای محاسباتی قابل دسترسی هستند.

مثال زیر نشان می‌دهد که چگونه می‌توان یک نقطه میانی را به‌عنوان یک نقطه عبور از طریق علامت‌گذاری کرد.

{
  "location": {
    "latLng": {
      "latitude":37.419734,
      "longitude":-122.0827784
    }
  },
  "via": true
}

به شناسه‌های مکان برای ایستگاه‌های بین راهی دسترسی پیدا کنید

اگر مکان مبدأ، مقصد، یا ایستگاه میانی را به‌عنوان رشته آدرس یا کد پلاس مشخص کنید، API تلاش می‌کند مرتبط‌ترین مکان را پیدا کند که دارای شناسه مکان مربوطه است. آرایه geocodingResults.intermediates در نتایج حاوی شناسه مکان مربوط به مکان ایستگاه های بین راهی، همراه با داده های اضافی درباره مکان است.

برای هر عنصر از آرایه intermediates ، از ویژگی intermediateWaypointRequestIndex استفاده کنید تا تعیین کنید کدام نقطه میانی در درخواست با شناسه مکان در پاسخ مطابقت دارد.

به عنوان مثال:

  • شما سه نقطه میانی را در یک درخواست مشخص می کنید. دو تا از این نقاط راه با رشته های آدرس و یکی با مختصات طول و عرض جغرافیایی مشخص می شوند.

  • شما geocodingResults در ماسک فیلد پاسخ قرار می دهید تا مشخص کنید آرایه geocodingResults را در نتایج برگردانید.

curl -X POST -d '{
  "origin":{
    "address": "1600 Amphitheatre Parkway, Mountain View, CA"
  },
  "destination":{
    "address": "24 Willie Mays Plaza, San Francisco, CA 94107"
  },
  "intermediates": [
    {
      "address": "450 Serra Mall, Stanford, CA 94305, USA"
    },
    {
      "location":{
        "latLng":{
          "latitude": 37.419734,
          "longitude": -122.0807784
        }
      }
    },
    {
      "address": "1836 El Camino Real, Redwood City, CA 94063"
    }
  ],
  "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,geocodingResults'
'https://routes.googleapis.com/directions/v2:computeRoutes'

پاسخ شامل آرایه geocodingResults است که شامل شناسه مکان برای مبدا، مقصد، و برای دو تا از سه نقطه راه است. اینها نقاط راه در شاخص 0 و 2 درخواست هستند. از آنجا که نقطه راه در شاخص 1 درخواست با استفاده از مختصات طول و عرض جغرافیایی مشخص شده است، از آرایه geocodingResults در پاسخ حذف می شود.

{
  "routes": [{...}],
  "geocodingResults": {
    "origin": {
      "geocoderStatus": {},
      "type": [
        "premise"
      ],
      "placeId": "ChIJj38IfwK6j4ARNcyPDnEGa9g"
    },
    "destination": {
     "geocoderStatus": {},
      "type": [
        "premise"
      ],
      "placeId": "ChIJI7ES6tl_j4ARVpDZoXbWAiY"
    },
    "intermediates": [
      {
        "geocoderStatus": {},
        "intermediateWaypointRequestIndex": 0,
        "type": [
            "street_address"
        ],
        "placeId": "ChIJvdLMGyq7j4ARScE5tWX_C0Y"
      },
      {
        "geocoderStatus": {},
        "intermediateWaypointRequestIndex": 2,
        "type": [
          "premise"
        ],
        "placeId": "ChIJkTc0GKajj4AR9UMsOSHwGD0"
      }
    ]
  }
}