Impostare una fermata lungo un percorso

Sviluppatori dello Spazio economico europeo (SEE)

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 in RouteLeg segmenti 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: true su 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 RouteLeg segmenti: 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.