Calcolare il riepilogo del routing
Per utilizzare Ricerca di testo (nuova) o Ricerca nelle vicinanze (nuova) per calcolare la durata e la distanza del viaggio verso ogni luogo nella risposta:
-
Passa il parametro
routingParameters.origin
nella richiesta per specificare le coordinate di latitudine e longitudine dell'origine del percorso. Questo parametro è necessario per calcolare la durata e la distanza da ogni luogo nella risposta. -
Includi
routingSummaries
nella maschera del campo in modo che la risposta includa l'arrayroutingSummaries
. Questo array contiene la durata e la distanza dall'origine del percorso a ogni luogo nella risposta.
L'API Explorer ti consente di effettuare richieste in tempo reale per familiarizzare con l'API e le relative opzioni:
Utilizzare la ricerca testuale (novità)
Nella seguente richiesta, calcoli la durata e la distanza del viaggio per ogni luogo nella risposta di Ricerca di testo (nuova):
curl -X POST -d '{ "textQuery" : "Spicy Vegetarian Food in Sydney, Australia", "routingParameters": { "origin": { "latitude": -33.8688, "longitude": 151.1957362 } } }' \ -H 'Content-Type: application/json' -H 'X-Goog-Api-Key: API_KEY' \ -H 'X-Goog-FieldMask: places.displayName,places.formattedAddress,places.priceLevel,routingSummaries' \ 'https://places.googleapis.com/v1/places:searchText'
La risposta contiene due array JSON: l'array places
contiene i luoghi corrispondenti e l'array routingSummaries
contenente la durata e la distanza da percorrere per raggiungere ogni luogo:
{ "places": [ { object (Place) } ] "routingSummaries": [ { object (RoutingSummary) } }
Ogni elemento dell'array routingSummaries
si trova nella posizione corrispondente dell'array places
. ovvero l'elemento in
routingSummaries[0]
corrisponde al luogo in places[0]
.
La lunghezza dell'array routingSummaries
è uguale a quella dell'array
places
. Nel caso in cui routingSummary
per un luogo non sia disponibile,
la voce dell'array è vuota.
Poiché questo esempio calcola la durata e la distanza dall'origine del percorso a ogni luogo, il campo routingSummaries.legs
nella risposta contiene un singolo oggetto Leg
che contiene duration
e distanceMeters
dall'origine del percorso al luogo.
{ "places": [ { "formattedAddress": "1, Westfield Sydney Central Plaza, 450 George St, Sydney NSW 2000, Australia", "displayName": { "text": "Gözleme King Sydney", "languageCode": "en" } }, { "formattedAddress": "367 Pitt St, Sydney NSW 2000, Australia", "priceLevel": "PRICE_LEVEL_MODERATE", "displayName": { "text": "Mother Chu's Vegetarian Kitchen", "languageCode": "en" } }, … ] "routingSummaries": [ { "legs": [ { "duration": "597s", "distanceMeters": 2607 } ], "directionsUri": "https://www.google.com/maps/dir/-33.8688,151.1957362/''/data=!4m6!4m5!1m0!1m2!1m1!1s0x6b12ae3fa97cd745:0x6aecf365bf497c08!3e0" }, { "legs": [ { "duration": "562s", "distanceMeters": 2345 } ], "directionsUri": "https://www.google.com/maps/dir/-33.8688,151.1957362/''/data=!4m6!4m5!1m0!1m2!1m1!1s0x6b12ae3da97f60c1:0x845f3273bd764f6c!3e0" }, … ] }
Da questo esempio, puoi vedere che la durata e la distanza dall'origine del percorso al primo luogo nei risultati sono 597 secondi e 2607 metri.
Utilizzare Nearby Search
In questo esempio, calcoli la durata e la distanza del viaggio per ogni luogo nella risposta della ricerca nelle vicinanze. Questo esempio cerca ristoranti a Sydney, in Australia, e imposta la limitazione della località e l'origine del percorso sulla stessa coordinata di latitudine e longitudine:
curl -X POST -d '{ "includedTypes": ["restaurant"], "maxResultCount": 10, "locationRestriction": { "circle": { "center": { "latitude": -33.8688, "longitude": 151.1957362}, "radius": 500.0 } }, "routingParameters": { "origin": { "latitude": -33.8688, "longitude": 151.1957362 } } }' \ -H 'Content-Type: application/json' -H "X-Goog-Api-Key:API_KEY" \ -H "X-Goog-FieldMask: places.displayName,routingSummaries" \ https://places.googleapis.com/v1/places:searchNearby
Non devi utilizzare le stesse coordinate per locationRestriction
e per l'origine del percorso. Ad esempio, imposti locationRestriction
sul punto centrale di Sydney per dare la priorità ai risultati di ricerca all'interno di questo cerchio. ma poi imposti l'origine
dell'itinerario sulle coordinate della tua casa, ovvero su una posizione diversa
all'interno del cerchio di ricerca. La richiesta quindi sposta i risultati di ricerca verso il
cerchio e calcola i riepiloghi degli itinerari in base alla posizione della tua
casa.
Specificare le opzioni di viaggio
Per impostazione predefinita, i calcoli di durata e distanza si riferiscono a un'auto. Tuttavia, puoi controllare il tipo di veicolo, nonché altre opzioni, nella ricerca.
-
Utilizza il parametro
routingParameters.travelMode
per impostare la modalità di trasporto suDRIVE
,BICYCLE
,WALK
oTWO_WHEELER
. Per ulteriori informazioni su queste opzioni, vedi Tipi di veicoli disponibili per i percorsi. -
Utilizza la proprietà
routingParameters.routingPreference
per impostare l'opzione di preferenza di routing suTRAFFIC_UNAWARE
(impostazione predefinita),TRAFFIC_AWARE
oTRAFFIC_AWARE_OPTIMAL
. Ogni opzione ha diversi livelli di qualità dei dati e latenza. Per maggiori informazioni, vedi Specificare come e se includere i dati sul traffico.La proprietà
routingParameters.routingPreference
influisce sulle indicazioni stradali contenute nel campo Anteprima (pre-GA)directionsUri
perché Google Maps mostra le opzioni di traffico quando apre il link. -
Utilizza la proprietà
routingParameters.routeModifiers
per specificareavoidTolls
,avoidHighways
,avoidFerries
eavoidIndoor
. Per ulteriori informazioni su queste opzioni, vedi Specificare le caratteristiche del percorso da evitare.
Nell'esempio successivo, specifichi la modalità di viaggio come DRIVE
e di evitare
le autostrade:
curl -X POST -d '{ "textQuery" : "Spicy Vegetarian Food in Sydney, Australia", "routingParameters": { "origin": { "latitude": -33.8688, "longitude": 151.1957362 }, "travelMode":"DRIVE", "routeModifiers": { "avoidHighways": true } } }' \ -H 'Content-Type: application/json' -H 'X-Goog-Api-Key: API_KEY' \ -H 'X-Goog-FieldMask: places.displayName,places.formattedAddress,places.priceLevel,routingSummaries' \ 'https://places.googleapis.com/v1/places:searchText'
Prova
L'Explorer API ti consente di effettuare richieste di esempio per familiarizzare con l'API e le relative opzioni.
Seleziona l'icona API api sul lato destro della pagina.
(Facoltativo) Modifica i parametri della richiesta.
Seleziona il pulsante Esegui. Nella finestra di dialogo, scegli l'account che vuoi utilizzare per effettuare la richiesta.
Nel riquadro Explorer API, seleziona l'icona a schermo intero fullscreen per espandere la finestra di Explorer API.