Trovare un percorso più breve

L'API Routes può restituire percorsi in auto ottimizzati per una distanza di viaggio più breve quando attivi i percorsi con distanza più breve.

Quando richiedi un percorso più breve, il servizio restituisce quanto segue:

  • Il percorso predefinito, ovvero un percorso ottimizzato principalmente per l'orario di arrivo stimato.
  • Un percorso più breve ottimizzato per ridurre al minimo la distanza percorsa durante l'intero viaggio.

Che cos'è e perché utilizzarlo

Un percorso più breve dà la priorità alla distanza rispetto al comfort di guida o alla velocità. Ad esempio, potrebbe preferire le strade locali anziché le autostrade, percorrere strade sterrate o passare attraverso parcheggi. Non restituisce manovre che Google Maps sa essere illegali.

Richiedi un percorso più breve

La richiesta deve soddisfare i seguenti criteri:

  • Imposta travelMode su DRIVE, BICYCLE o TWO_WHEELER.
  • Imposta requestedReferenceRoutes su SHORTER_DISTANCE.
  • Imposta una maschera del campo di risposta per restituire le proprietà di risposta associate a un percorso più breve:
    • routes.routeLabels: identifica ogni percorso come DEFAULT_ROUTE, SHORTER_DISTANCE o DEFAULT_ROUTE_ALTERNATE.
    • routes.routeToken: un token percorso che puoi passare all'SDK Navigation per recuperare un percorso personalizzato.
  • Non includere Via waypoint intermedi.
  • Non includere il parametro optimizeWaypointOrder.
  • (Facoltativo) Imposta una maschera del campo di risposta per restituire le seguenti proprietà associate sia al percorso predefinito sia a quello più breve:
    • routes.distanceMeters: restituisce la distanza del percorso.
    • routes.duration: restituisce la durata del percorso.

Per informazioni di riferimento, consulta ReferenceRoute e RouteLabel.

Richiesta di esempio: percorso più breve

Il seguente codice mostra una richiesta di un percorso più breve. In questo esempio, utilizzi la maschera dei campi di risposta per restituire i campi associati sia al percorso predefinito sia a quello più breve con le seguenti maschere di campi:

  • routes.distanceMeters
  • routes.duration
curl -X POST -H 'content-type: application/json' -d '{
  "origin": {
    "location": {
      "latLng": {
        "latitude": 41.76904801292959,
        "longitude": -72.67374935684933
      }
    }
  },
  "destination": {
    "location": {
      "latLng": {
        "latitude": 41.823042361105024,
        "longitude": -71.40933143059424
      }
    }
  },
  "travelMode":"DRIVE",
  "routingPreference":"TRAFFIC_AWARE",
  "requestedReferenceRoutes": ["SHORTER_DISTANCE"],
}' \
-H 'Content-Type: application/json' -H 'X-Goog-Api-Key: YOUR_API_KEY \
-H 'X-Goog-FieldMask: routes.distanceMeters,routes.duration,routes.routeLabels,routes.routeToken' \
'https://routes.googleapis.com/directions/v2:computeRoutes'

Esempio di risposta con percorso più breve

{
  "routes": [
    {
      "distanceMeters": 138943,
      "duration": "5373s",
      "routeToken": "CrsCCs4BMssBGq8BCkECFg9eN0MowaEI3Y4KqMEhzOTe-Qi3947kBsb8koUBkvX0oAKJ_b1S4uPoUvzzAYfXA92t_RXyw98Up6qKAaRaABIsNBjodKMdkMYAPMLMIajCwj-zsIxpgyBxOLYjdBBeKgkO3tFDDrj4YgZB5bMaFQAATME12CCCA9MEF-kO2wL_____DyoLHgAOAHN3DggAQQEyBAUBAQM9VDgqPkV88FI_SNO81oLq4JnjYyIXcklWWFo2cjhDZmltdk9NUDQ3aU1nUU0QBRpPCk0KGAoNCgIIAREAAAAAAIBmQBF56SYxqDm4QBISCAAQAxAGEBMQEhgCQgQaAggFIhsKF3JJVlhaLWFOQnZpbXZPTVA0N2lNZ1FNcAEoASIVAACBmRY1BjeCiUQewJGTrQ3DuHRp",
      "routeLabels": [
        "DEFAULT_ROUTE"
      ]
    },
    {
      "distanceMeters": 112610,
      "duration": "7165s",
      "routeToken": "CqgCCrsBMrgBGpwBCjYCFg1SN0MowaEI3Y4KjfqjF6Ls9BXc-QGiqCOpu7FDtfCXxSG2zLOGI_r4uQGc-we_nQ7MLAASLDQY6HSjHZDGg26EAFrPI5Q3NxvGA4ELazy3sLYqno_9eAFD2KxlCqAGQeWzGg4AAMQDGwyiAqwwKQggJCoLHgBsCQ8Acm0XWWcyAgQGPVQ4Kj5FfPBSP0jikPWC95WdhIwBIhdySVZYWjZHR0RiTzV2T01QOUpiQXlBTRAFGk8KTQoYCg0KAggCEQAAAAAAAFlAEU5iEFh5af1AEhIIABADEAYQExASGAJCBBoCCAUiGwoXcklWWFo3S09Cck81dk9NUDlKYkF5QU1wASgCIhUAAIGZFlj_CmMgGE6KGZcsE-tEywM",
      "routeLabels": [
        "SHORTER_DISTANCE"
      ]
    }
  ]
}

Richiesta di esempio: percorso più breve e a basso consumo di carburante

Il codice seguente mostra una richiesta sia di un percorso più breve sia di un percorso con un minore consumo di carburante.

`

 curl -X POST -d '{
"origin": {  "location": {  "latLng": {  "latitude": 41.76904801292959,
"longitude": -72.67374935684933  }  }  },  "destination": {  "location": {
"latLng": {  "latitude": 41.823042361105024,  "longitude": -71.40933143059424  }
 }  },  "travelMode":"DRIVE",  "routingPreference":"TRAFFIC_AWARE_OPTIMAL",
"requestedReferenceRoutes": ["SHORTER_DISTANCE", "FUEL_EFFICIENT"] }' 
-H 'Content-Type: application/json'
-H 'X-Goog-Api-Key: YOUR_API_KEY'
-H 'X-Goog-FieldMask: routes.distanceMeters,routes.duration,routes.routeLabels,routes.routeToken'
'https://routes.googleapis.com/directions/v2:computeRoutes'

Risposta di esempio: Percorso più breve e a basso consumo di carburante

In questo caso, la distanza più breve e il percorso più efficiente dal punto di vista del consumo di carburante sono uguali, pertanto viene restituito questo percorso e routeLabel è incluso per entrambi i tipi di percorso.

{  "routes": [  {  "distanceMeters": 138943,  "duration": "5375s",
"routeToken":
"Cr8CCs4BMssBGq8BCkECFg9eN0MowaEI3Y4KqMEhzOTe-Qi3947kBsb8koUBkvX0oAKJ_b1S4uPoUvzzAYfXA92t_RXyw98Up6qKAaRaABIsNBjodKMdkMYAPMLMIajCwj-zsIxpgyBxOLYjdBBeKgkO3tFDDrj4YgZB5bMaFQAATME12CCCA9MEF-kO2wL_____DyoLHgAOAHN3DggAQQEyBAUBAQM9VDgqPkV88FI_SNO81oLq4JnjYyIXS1laWFo4T19JcWVCM2ZFUDFMbms4UXcQBRpTClEKGAoNCgIIAREAAAAAAIBmQBFOYhBYGTy4QBIWCAAQAxAGEBMQEhgCQgQaAggFSgIIASIbChdLWVpYWjlpV0g2ZUIzZkVQMUxuazhRd3ABKAEiFQAAgZkW4Df4cspNNJZWlMZuUUxLPQ",
 "routeLabels": [  "DEFAULT_ROUTE"  ]  },  {  "distanceMeters": 112610,
"duration": "7156s",  "routeToken":
"CqwCCrsBMrgBGpwBCjYCFg1SN0MowaEI3Y4KjfqjF6Ls9BXc-QGiqCOpu7FDtfCXxSG2zLOGI_r4uQGc-we_nQ7MLAASLDQY6HSjHZDGg26EAFrPI5Q3NxvGA4ELazy3sLYqno_9eAFD2KxlCqAGQeWzGg4AAMQDGwyiAqwwKQggJCoLHgBsCQ8Acm0XWWcyAgQGPVQ4Kj5FfPBSP0jikPWC95WdhIwBIhdLWVpYWi1UNklfT055OVlQczhhcWlRSRAFGlMKUQoYCg0KAggCEQAAAAAAAFlAEU5iEFh5af1AEhYIABADEAYQExASGAJCBBoCCAVKAggBIhsKF0tZWlhaNERXSF9PTnk5WVBzOGFxaVFJcAEoAiIVAACBmRaESp2EJS5nmwiEF8KH15_f",
 "routeLabels": [  "FUEL_EFFICIENT",  "SHORTER_DISTANCE"  ]  }  ] }

Aree geografiche supportate

I percorsi con distanze più brevi sono supportati in tutte le regioni.

Fatturazione

Google Maps Platform non addebita costi aggiuntivi per l'utilizzo di una funzionalità sperimentale. Ti verrà addebitato un importo in base all'utilizzo dell'API e ad altri parametri impostati.

Scopri di più sulla fatturazione per l'API Routes.