中途路線控點是指起點和目的地之間的位置,您希望路線行經這些位置。
您可以使用 REST computeRoutes 方法的 intermediates 陣列屬性,或 gRPC ComputeRoutes 方法,在單一要求中定義最多 25 個中途停靠點。
中途停留與直通路線控點
您可以將中途停靠點設為停靠或通過位置:
- 中途停靠:車輛預設會停靠該地點。每個中途停靠站航點都會在回應的
legs陣列中新增RouteLeg項目,藉此劃分路線。詳情請參閱「在路線上設定停靠點」。 - 途經航點,且
"via"設為true:車輛會通過該地點,但不會停靠。傳遞路線控點不會在legs陣列中新增項目。詳情請參閱「設定路線的途經點」。
路線段和中繼路線控點
在要求中,每個中途停靠點的回應都包含 routes.legs 陣列中的個別 RouteLeg 物件。
舉例來說,如果路線包含起點、一個中途停靠點和目的地,則會包含兩條路線路段: * 路段 1:從起點到中途停靠點。 * 第 2 段:從中途停靠站到目的地。
範例:要求包含中途停靠點
以下範例使用 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 } } } ] } ] }