Ara yol işaretleri, rotanın başlangıç ve varış noktası arasından geçmesini istediğiniz konumlardır. Ara yol noktası bir durak olabilir veya geçilecek bir konum olarak belirtebilirsiniz. Durak için bir yol noktası örneğine Rota üzerinde durak ayarlama başlıklı makaleden ulaşabilirsiniz. Geçilecek bir yol noktası örneği için Geçilecek bir rota için nokta ayarlama başlıklı makaleyi inceleyin.
En fazla 25 ara yol noktası tanımlamak için computeRoutes yönteminin (REST) veya ComputeRoutes yönteminin (gRPC) intermediates
dizisi mülkünü kullanın.
İstekteki her ara yol noktası için yanıttaki Rota nesnesi (REST) veya Rota nesnesi (gRPC), yolculuğun bu bölümünün ayrıntılarını sağlamak üzere legs
dizisine bir giriş ekler.
Bir rotanın her bölümü bir RouteLeg (REST) veya RouteLeg (gRPC) nesnesi ile temsil edilir.
Yanıt alanı maskesini kullanarak döndürülecek RouteLeg
alanlarını kontrol edin.
Örnek: Ara yol noktası ayarlama
Aşağıdaki örnekte, bir rotanın POST istek gövdesine tek bir ara yol noktası eklemek için intermediates
dizi özelliği kullanılır.
Bu örnekte, X-Goog-FieldMask
üstbilgisinde yanıtta aşağıdaki alanların döndürüleceğini belirten bir yanıt alanı maskesi kullanılmaktadır:
routes.duration
routes.distanceMeters
RouteLeg
nesnesinin tamamına karşılık gelenroutes.legs
.
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'
Bu çağrıdan gelen yanıt, legs
dizisini içerir. Bacağın her adımı bir RouteLegStep (REST) veya RouteLegStep (gRPC) nesnesi ile temsil edilir.
{ "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": [ { ...