Puoi impostare una fermata lungo un percorso, ad esempio per un ritiro o una consegna, in due modi:
- Aggiungi una tappa intermedia: questa è l'opzione predefinita. Aggiungi un
waypoint intermedio tra l'origine e la destinazione nell'array
intermediates. Il motore di routing aggancia il waypoint alla strada percorribile più vicina e divide il percorso inRouteLegsegmenti collegati da questa fermata. - Specifica una sosta del veicolo: se vuoi che il motore di routing esegua
un'analisi aggiuntiva per evitare tratti stradali non adatti alla sosta, come
autostrade, gallerie o cavalcavia, imposta
vehicleStopover: truesu un waypoint.
Aggiungere una tappa intermedia
Per impostare una fermata lungo un percorso, aggiungi un waypoint intermedio all'array
intermediates nella richiesta.
L'aggiunta di un waypoint intermedio ha i seguenti effetti:
- Il percorso è suddiviso in
RouteLegsegmenti: ogni segmento collega una fermata alla successiva. - La coordinata viene agganciata a una strada: il motore di routing aggancia la coordinata di latitudine e longitudine, che potrebbe trovarsi su un tetto o in un cortile, al segmento di strada percorribile più vicino.
Per molte strade di superficie, l'aggancio alla strada più vicina fornisce una posizione di arresto pratica. Tuttavia, lo snapping non determina se quel tratto di strada è adatto per fermarsi, ad esempio quando la strada più vicina è un'autostrada o una galleria.
Esempio: aggiunta di un waypoint intermedio
L'esempio seguente mostra come impostare una fermata lungo un percorso aggiungendo un
waypoint intermedio in una richiesta POST computeRoutes:
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'
Per saperne di più sui waypoint intermedi e sui segmenti di itinerario, vedi Impostare waypoint intermedi.
Specifica una sosta del veicolo per l'idoneità al ritiro e alla riconsegna
Mentre una tappa intermedia standard si aggancia alla strada più vicina, questa strada
non è sempre adatta per una sosta del veicolo. Quando vuoi che il motore di routing esegua un'analisi aggiuntiva per valutare l'idoneità della strada per il ritiro o la consegna, imposta vehicleStopover: true sul waypoint.
Quando imposti vehicleStopover: true, il motore di routing valuta i segmenti stradali candidati e tenta di evitare le strade non adatte alla sosta, come autostrade, gallerie e cavalcavia.
Ad esempio, considera una posizione in cui una strada di superficie passa direttamente sopra un'autostrada all'interno di un tunnel: * Waypoint intermedio standard: si allinea all'autostrada o al tunnel sottostante se è geometricamente più vicino alla tua coordinata. * Sosta del veicolo: esegue un'analisi aggiuntiva per evitare l'autostrada e la galleria, spostando la sosta su una strada di superficie adatta per fermarsi.
Esempio: specifica vehicleStopover su un waypoint
L'esempio seguente mostra come impostare vehicleStopover: true su un
waypoint intermedio in una richiesta POST completa:
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 } }, "vehicleStopover": true } ], "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'
Per saperne di più sui tipi e sulle opzioni di waypoint, consulta Tipi e opzioni di waypoint.