Method: computeRoutes

Restituisce il percorso principale insieme a percorsi alternativi facoltativi, definiti con una serie di tappe finali e intermedi.

NOTA:questo metodo richiede di specificare una maschera del campo di risposta nell'input. Puoi fornire la maschera del campo della risposta utilizzando il parametro URL $fields o fields oppure utilizzando un'intestazione HTTP/gRPC X-Goog-FieldMask (consulta i parametri URL e le intestazioni disponibili). Il valore è un elenco di percorsi dei campi separati da virgole. Consulta la documentazione dettagliata su come creare i percorsi dei campi.

Ad esempio, in questo metodo:

  • Maschera di tutti i campi disponibili (per l'ispezione manuale): X-Goog-FieldMask: *
  • Maschera per il campo di durata, distanza e polilinea a livello di percorso (una configurazione di produzione di esempio): X-Goog-FieldMask: routes.duration,routes.distanceMeters,routes.polyline.encodedPolyline

Google sconsiglia l'utilizzo della maschera per il campo di risposta con caratteri jolly (*) o di specificare la maschera per il campo al livello più alto (routes) per i seguenti motivi:

  • La selezione solo dei campi necessari aiuta il nostro server a salvare i cicli di calcolo, consentendoci di restituirti il risultato con una latenza inferiore.
  • La selezione solo dei campi che ti servono nel tuo job di produzione garantisce prestazioni di latenza stabili. In futuro potremmo aggiungere altri campi di risposta e questi nuovi campi potrebbero richiedere più tempo di calcolo. Se selezioni tutti i campi o tutti i campi al livello superiore, potresti riscontrare un peggioramento delle prestazioni perché qualsiasi nuovo campo che aggiungiamo verrà incluso automaticamente nella risposta.
  • La selezione dei soli campi necessari comporta una riduzione delle dimensioni della risposta e, di conseguenza, una velocità effettiva di rete superiore.

Richiesta HTTP

POST https://routes.googleapis.com/directions/v2:computeRoutes

L'URL utilizza la sintassi di transcodifica gRPC.

Corpo della richiesta

Il corpo della richiesta contiene dati con la seguente struttura:

Rappresentazione JSON
{
  "origin": {
    object (Waypoint)
  },
  "destination": {
    object (Waypoint)
  },
  "intermediates": [
    {
      object (Waypoint)
    }
  ],
  "travelMode": enum (RouteTravelMode),
  "routingPreference": enum (RoutingPreference),
  "polylineQuality": enum (PolylineQuality),
  "polylineEncoding": enum (PolylineEncoding),
  "departureTime": string,
  "arrivalTime": string,
  "computeAlternativeRoutes": boolean,
  "routeModifiers": {
    object (RouteModifiers)
  },
  "languageCode": string,
  "regionCode": string,
  "units": enum (Units),
  "optimizeWaypointOrder": boolean,
  "requestedReferenceRoutes": [
    enum (ReferenceRoute)
  ],
  "extraComputations": [
    enum (ExtraComputation)
  ],
  "trafficModel": enum (TrafficModel),
  "transitPreferences": {
    object (TransitPreferences)
  }
}
Campi
origin

object (Waypoint)

Obbligatoria. Waypoint di partenza.

destination

object (Waypoint)

Obbligatoria. Waypoint di destinazione.

intermediates[]

object (Waypoint)

Campo facoltativo. Un insieme di tappe lungo il percorso (esclusi i punti terminali) per fermarsi o passare. Sono supportati fino a 25 waypoint intermedi.

travelMode

enum (RouteTravelMode)

Campo facoltativo. Specifica la modalità di trasporto.

routingPreference

enum (RoutingPreference)

Campo facoltativo. Specifica come calcolare la route. Il server tenta di utilizzare la preferenza di routing selezionata per calcolare la route. Se la preferenza di routing genera un errore o una latenza extra lunga, viene restituito un errore. Puoi specificare questa opzione solo quando travelMode è DRIVE o TWO_WHEELER, altrimenti la richiesta non va a buon fine.

polylineQuality

enum (PolylineQuality)

Campo facoltativo. Specifica la tua preferenza per la qualità della polilinea.

polylineEncoding

enum (PolylineEncoding)

Campo facoltativo. Specifica la codifica preferita per la polilinea.

departureTime

string (Timestamp format)

Campo facoltativo. L'ora di partenza. Se non imposti questo valore, per impostazione predefinita viene utilizzato il momento in cui hai effettuato la richiesta. NOTA: puoi specificare un departureTime solo in passato quando RouteTravelMode è impostato su TRANSIT. Le corse dei trasporti pubblici sono disponibili fino a 7 giorni prima o a 100 giorni nel futuro.

Un timestamp in formato "Zulu" RFC3339 UTC, con risoluzione in nanosecondi e fino a nove cifre frazionarie. Esempi: "2014-10-02T15:01:23Z" e "2014-10-02T15:01:23.045123456Z".

arrivalTime

string (Timestamp format)

Campo facoltativo. L'ora di arrivo. NOTA: può essere impostato solo quando RouteTravelMode è impostato su TRANSIT. Puoi specificare departureTime o arrivalTime, ma non entrambi. Le corse dei trasporti pubblici sono disponibili fino a 7 giorni prima o a 100 giorni nel futuro.

Un timestamp in formato "Zulu" RFC3339 UTC, con risoluzione in nanosecondi e fino a nove cifre frazionarie. Esempi: "2014-10-02T15:01:23Z" e "2014-10-02T15:01:23.045123456Z".

computeAlternativeRoutes

boolean

Campo facoltativo. Specifica se calcolare i percorsi alternativi in aggiunta al percorso. Non vengono restituite route alternative per le richieste con waypoint intermedi.

routeModifiers

object (RouteModifiers)

Campo facoltativo. Un insieme di condizioni da soddisfare che influiscono sul modo in cui vengono calcolate le route.

languageCode

string

Campo facoltativo. Il codice lingua BCP-47, ad esempio "en-US" o "sr-Latn". Per ulteriori informazioni, consulta la sezione Identificatore internazionale Unicode. Consulta l'elenco delle lingue supportate nella pagina Supporto delle lingue. Se non specifichi questo valore, la lingua di visualizzazione viene dedotta dalla località della richiesta di route.

regionCode

string

Campo facoltativo. Il codice regione, specificato come valore a due caratteri ccTLD ("dominio di primo livello"). Per ulteriori informazioni, vedi Domini di primo livello nazionali.

units

enum (Units)

Campo facoltativo. Specifica le unità di misura per i campi di visualizzazione. Questi campi includono il campo instruction in NavigationInstruction. Le unità di misura utilizzate per percorso, tratta, distanza dei passi e durata non sono interessate da questo valore. Se non specifichi questo valore, le unità di visualizzazione vengono dedotte dalla posizione della prima origine.

optimizeWaypointOrder

boolean

Campo facoltativo. Se il criterio viene impostato su true, il servizio tenta di ridurre al minimo il costo complessivo del percorso riordinando i waypoint intermedi specificati. La richiesta non va a buon fine se uno dei waypoint intermedi è un waypoint via. Usa ComputeRoutesResponse.Routes.optimized_intermediate_waypoint_index per trovare il nuovo ordine. Se ComputeRoutesResponseroutes.optimized_intermediate_waypoint_index non viene richiesto nell'intestazione X-Goog-FieldMask, la richiesta non riesce. Se optimizeWaypointOrder è impostato su false, il campo ComputeRoutesResponse.optimized_intermediate_waypoint_index sarà vuoto.

requestedReferenceRoutes[]

enum (ReferenceRoute)

Campo facoltativo. Specifica quali route di riferimento calcolare come parte della richiesta oltre alla route predefinita. Un percorso di riferimento è un percorso con uno scopo di calcolo diverso rispetto al percorso predefinito. Ad esempio, il calcolo di un percorso di riferimento FUEL_EFFICIENT prende in considerazione vari parametri che genererebbero un percorso ottimale a basso consumo di carburante.

extraComputations[]

enum (ExtraComputation)

Campo facoltativo. Un elenco di calcoli aggiuntivi che possono essere utilizzati per completare la richiesta. Nota: questi calcoli aggiuntivi potrebbero restituire campi aggiuntivi nella risposta. Questi campi aggiuntivi devono essere specificati anche nella maschera del campo per poter essere restituiti nella risposta.

trafficModel

enum (TrafficModel)

Campo facoltativo. Specifica le ipotesi da utilizzare per il calcolo del tempo nel traffico. Questa impostazione influisce sul valore restituito nel campo Durata in Route e RouteLeg, che contiene il tempo previsto nel traffico in base alle medie storiche. TrafficModel è disponibile solo per le richieste che hanno impostato RoutingPreference su TRAFFIC_AWARE_OPTIMAL e RouteTravelMode su DRIVE. Il valore predefinito è BEST_GUESS se viene richiesto del traffico e TrafficModel non è specificato.

transitPreferences

object (TransitPreferences)

Campo facoltativo. Specifica le preferenze che influenzano il percorso restituito per le route TRANSIT. NOTA: puoi specificare un transitPreferences solo quando RouteTravelMode è impostato su TRANSIT.

Corpo della risposta

v2.computeRoutes il messaggio di risposta.

In caso di esito positivo, il corpo della risposta contiene dati con la seguente struttura:

Rappresentazione JSON
{
  "routes": [
    {
      object (Route)
    }
  ],
  "fallbackInfo": {
    object (FallbackInfo)
  },
  "geocodingResults": {
    object (GeocodingResults)
  }
}
Campi
routes[]

object (Route)

Contiene un array di route calcolate (fino a tre) quando specifichi compute_alternatives_routes e contiene solo una route quando non lo specifichi. Quando questo array contiene più voci, la prima è il percorso più consigliato. Se l'array è vuoto, significa che non è stata trovata alcuna route.

fallbackInfo

object (FallbackInfo)

In alcuni casi, quando il server non è in grado di calcolare i risultati della route con tutte le preferenze di input, potrebbe utilizzare un metodo di calcolo diverso. Quando viene utilizzata la modalità di riserva, questo campo contiene informazioni dettagliate sulla risposta di riserva. In caso contrario, il campo non viene configurato.

geocodingResults

object (GeocodingResults)

Contiene informazioni di risposta di geocodifica per i waypoint specificati come indirizzi.

PolylineQuality

Un insieme di valori che specifica la qualità della polilinea.

Enum
POLYLINE_QUALITY_UNSPECIFIED Nessuna preferenza di qualità della polilinea specificata. Il valore predefinito è OVERVIEW.
HIGH_QUALITY Specifica una polilinea di alta qualità, composta utilizzando più punti di OVERVIEW, al costo di un aumento della dimensione della risposta. Utilizza questo valore quando hai bisogno di una maggiore precisione.
OVERVIEW Specifica una polilinea panoramica, composta da un numero ridotto di punti. Utilizza questo valore quando visualizzi una panoramica del percorso. L'uso di questa opzione ha una latenza di richiesta inferiore rispetto all'uso dell'opzione HIGH_QUALITY.

PolylineEncoding

Specifica il tipo preferito di polilinea da restituire.

Enum
POLYLINE_ENCODING_UNSPECIFIED Nessuna preferenza del tipo di polilinea specificata. Il valore predefinito è ENCODED_POLYLINE.
ENCODED_POLYLINE Specifica una polilinea codificata utilizzando l'algoritmo di codifica delle poliline.
GEO_JSON_LINESTRING Specifica una polilinea utilizzando il formato LineString GeoJSON

ReferenceRoute

Una route di riferimento supportata in ComputeRoutesRequest.

Enum
REFERENCE_ROUTE_UNSPECIFIED Non utilizzato. Le richieste contenenti questo valore non riescono.
FUEL_EFFICIENT Percorso a basso consumo di carburante. I percorsi etichettati con questo valore vengono determinati come ottimizzati per parametri come il consumo di carburante.

ExtraComputation

Calcoli aggiuntivi da eseguire durante il completamento della richiesta.

Enum
EXTRA_COMPUTATION_UNSPECIFIED Non utilizzato. Le richieste contenenti questo valore non andranno a buon fine.
TOLLS Informazioni sui pedaggi per i percorsi.
FUEL_CONSUMPTION Consumo stimato di carburante per i percorsi.
TRAFFIC_ON_POLYLINE Polilinee sensibili al traffico per le route.
HTML_FORMATTED_NAVIGATION_INSTRUCTIONS NavigationInstructions presentato come stringa di testo HTML formattata. Questi contenuti devono essere letti così come sono. Questi contenuti sono solo a scopo di visualizzazione. Non analizzarlo in modo programmatico.

Route

Contiene un percorso, costituito da una serie di tratti di strada collegati che congiungono i punti di partenza, di arrivo e intermedi.

Rappresentazione JSON
{
  "routeLabels": [
    enum (RouteLabel)
  ],
  "legs": [
    {
      object (RouteLeg)
    }
  ],
  "distanceMeters": integer,
  "duration": string,
  "staticDuration": string,
  "polyline": {
    object (Polyline)
  },
  "description": string,
  "warnings": [
    string
  ],
  "viewport": {
    object (Viewport)
  },
  "travelAdvisory": {
    object (RouteTravelAdvisory)
  },
  "optimizedIntermediateWaypointIndex": [
    integer
  ],
  "localizedValues": {
    object (RouteLocalizedValues)
  },
  "routeToken": string
}
Campi
routeLabels[]

enum (RouteLabel)

Etichette per Route che sono utili per identificare le proprietà specifiche del percorso da confrontare con altre.

legs[]

object (RouteLeg)

Un insieme di tappe (segmenti di percorso tra tappe) che compongono il percorso. Ogni tratto corrisponde alla corsa tra due Waypoints non via. Ad esempio, un percorso senza tappe intermedie ha una sola tratta. Un percorso che include un waypoint intermedio non via ha due tappe. Un percorso che include un waypoint intermedio via ha una tratta. L'ordine delle tappe corrisponde all'ordine dei waypoint da origin a intermediates a destination.

distanceMeters

integer

La distanza percorsa lungo il percorso, in metri.

duration

string (Duration format)

Il tempo necessario per percorrere il percorso. Se imposti routingPreference su TRAFFIC_UNAWARE, questo valore equivale a staticDuration. Se imposti routingPreference su TRAFFIC_AWARE o TRAFFIC_AWARE_OPTIMAL, questo valore viene calcolato tenendo conto delle condizioni del traffico.

Una durata in secondi con un massimo di nove cifre frazionarie, che termina con "s". Esempio: "3.5s".

staticDuration

string (Duration format)

La durata del viaggio lungo il percorso senza tenere conto delle condizioni del traffico.

Una durata in secondi con un massimo di nove cifre frazionarie, che termina con "s". Esempio: "3.5s".

polyline

object (Polyline)

La polilinea complessiva del percorso. Questa polilinea è la polilinea combinata di legs.

description

string

Una descrizione del percorso.

warnings[]

string

Un array di avvisi da mostrare quando viene visualizzato il percorso.

viewport

object (Viewport)

Il riquadro di delimitazione dell'area visibile della polilinea.

travelAdvisory

object (RouteTravelAdvisory)

Informazioni aggiuntive sul percorso.

optimizedIntermediateWaypointIndex[]

integer

Se imposti optimizeWaypointOrder su true, questo campo contiene l'ordine ottimizzato dei waypoint intermedi. In caso contrario, il campo è vuoto. Ad esempio, se specifichi Origine: LA; Waypoint intermedi: Dallas, Bangor, Phoenix; Destinazione: New York; e l'ordine dei waypoint intermedi ottimizzato è Phoenix, Dallas, Bangor, questo campo contiene i valori [2, 0, 1]. L'indice inizia con 0 per il primo waypoint intermedio fornito nell'input.

localizedValues

object (RouteLocalizedValues)

Rappresentazioni testuali delle proprietà di Route.

routeToken

string

Un token di route sicuro per il web e con codifica Base64 che può essere trasmesso all'SDK di navigazione, che consente a quest'ultimo di ricostruire il percorso durante la navigazione e, in caso di ricalcolo, rispetta l'intenzione originale quando l'hai creata chiamando v2.computeRoutes. I clienti dovrebbero considerare questo token come un blob opaco. Non è destinata alla lettura o a mutazioni. NOTA: Route.route_token è disponibile solo per le richieste che hanno impostato ComputeRoutesRequest.routing_preference su TRAFFIC_AWARE o TRAFFIC_AWARE_OPTIMAL. L'opzione Route.route_token non è supportata per le richieste con waypoint.

RouteLabel

Etichette per Route che sono utili per identificare le proprietà specifiche del percorso da confrontare con altre.

Enum
ROUTE_LABEL_UNSPECIFIED Valore predefinito: non utilizzato.
DEFAULT_ROUTE La route "migliore" predefinita restituita per il calcolo delle route.
DEFAULT_ROUTE_ALTERNATE Un'alternativa al percorso predefinito "migliore". Route come questa verranno restituite quando viene specificato computeAlternativeRoutes.
FUEL_EFFICIENT Percorso a basso consumo di carburante. I percorsi etichettati con questo valore vengono determinati in modo da essere ottimizzati in base a parametri Eco come il consumo di carburante.

RouteLeg

Contiene un segmento compreso tra waypoint diversi da via.

Rappresentazione JSON
{
  "distanceMeters": integer,
  "duration": string,
  "staticDuration": string,
  "polyline": {
    object (Polyline)
  },
  "startLocation": {
    object (Location)
  },
  "endLocation": {
    object (Location)
  },
  "steps": [
    {
      object (RouteLegStep)
    }
  ],
  "travelAdvisory": {
    object (RouteLegTravelAdvisory)
  },
  "localizedValues": {
    object (RouteLegLocalizedValues)
  },
  "stepsOverview": {
    object (StepsOverview)
  }
}
Campi
distanceMeters

integer

La distanza percorsa del tratto del percorso, in metri.

duration

string (Duration format)

Il tempo necessario per navigare la gamba. Se route_preference è impostato su TRAFFIC_UNAWARE, questo valore equivale a staticDuration. Se route_preference è TRAFFIC_AWARE o TRAFFIC_AWARE_OPTIMAL, questo valore viene calcolato tenendo conto delle condizioni del traffico.

Una durata in secondi con un massimo di nove cifre frazionarie, che termina con "s". Esempio: "3.5s".

staticDuration

string (Duration format)

La durata del percorso per il tratto, calcolata senza tenere conto delle condizioni del traffico.

Una durata in secondi con un massimo di nove cifre frazionarie, che termina con "s". Esempio: "3.5s".

polyline

object (Polyline)

La polilinea complessiva di questa gamba che include la polilinea di ogni step.

startLocation

object (Location)

La posizione di partenza di questa tappa. Questa località potrebbe essere diversa dal origin fornito. Ad esempio, quando l'elemento origin fornito non è vicino a una strada, questo è un punto sulla strada.

endLocation

object (Location)

La posizione finale di questa gamba. Questa località potrebbe essere diversa dal destination fornito. Ad esempio, quando l'elemento destination fornito non è vicino a una strada, questo è un punto sulla strada.

steps[]

object (RouteLegStep)

Un array di passaggi che indicano i segmenti all'interno di questo tratto. Ogni passaggio rappresenta un'istruzione di navigazione.

travelAdvisory

object (RouteLegTravelAdvisory)

Contiene le informazioni aggiuntive di cui l'utente deve essere informato, come possibili limitazioni per le zone di traffico in un tratto di percorso.

localizedValues

object (RouteLegLocalizedValues)

Rappresentazioni testuali delle proprietà di RouteLeg.

stepsOverview

object (StepsOverview)

Informazioni generali sui passaggi descritti in questo RouteLeg. Questo campo viene compilato solo per le route TRANSIT.

Polilinea

Incapsula una polilinea codificata.

Rappresentazione JSON
{

  // Union field polyline_type can be only one of the following:
  "encodedPolyline": string,
  "geoJsonLinestring": {
    object
  }
  // End of list of possible types for union field polyline_type.
}
Campi
Campo di unione polyline_type. Incapsula il tipo di polilinea. Il valore predefinito è coded_polyline. polyline_type può essere solo uno dei seguenti:
encodedPolyline

string

La codifica stringa della polilinea utilizzando l'algoritmo di codifica delle polilinea.

geoJsonLinestring

object (Struct format)

Specifica una polilinea utilizzando il formato GeoJSON LineString.

RouteLegStep

Contiene un segmento di RouteLeg. Un passaggio corrisponde a una singola istruzione di navigazione. Le tappe del percorso sono composte da gradini.

Rappresentazione JSON
{
  "distanceMeters": integer,
  "staticDuration": string,
  "polyline": {
    object (Polyline)
  },
  "startLocation": {
    object (Location)
  },
  "endLocation": {
    object (Location)
  },
  "navigationInstruction": {
    object (NavigationInstruction)
  },
  "travelAdvisory": {
    object (RouteLegStepTravelAdvisory)
  },
  "localizedValues": {
    object (RouteLegStepLocalizedValues)
  },
  "transitDetails": {
    object (RouteLegStepTransitDetails)
  },
  "travelMode": enum (RouteTravelMode)
}
Campi
distanceMeters

integer

La distanza da percorrere per questo passo, in metri. In alcuni casi, questo campo potrebbe non avere un valore.

staticDuration

string (Duration format)

La durata del viaggio attraverso questo passaggio senza tenere conto delle condizioni del traffico. In alcuni casi, questo campo potrebbe non avere un valore.

Una durata in secondi con un massimo di nove cifre frazionarie, che termina con "s". Esempio: "3.5s".

polyline

object (Polyline)

La polilinea associata a questo passaggio.

startLocation

object (Location)

La posizione iniziale di questo passaggio.

endLocation

object (Location)

La posizione finale di questo passaggio.

navigationInstruction

object (NavigationInstruction)

Istruzioni di navigazione.

travelAdvisory

object (RouteLegStepTravelAdvisory)

Contiene le informazioni aggiuntive di cui l'utente deve essere informato, come eventuali limitazioni delle zone di traffico, in un passaggio della tratta.

localizedValues

object (RouteLegStepLocalizedValues)

Rappresentazioni testuali delle proprietà di RouteLegStep.

transitDetails

object (RouteLegStepTransitDetails)

Dettagli relativi a questo passaggio se la modalità di viaggio è TRANSIT.

travelMode

enum (RouteTravelMode)

La modalità di viaggio utilizzata per questo passaggio.

Manovra

Un insieme di valori che specifica l'azione di navigazione da eseguire per il passaggio corrente (ad esempio svolta a sinistra, unire o dritto).

Enum
MANEUVER_UNSPECIFIED Non utilizzato.
TURN_SLIGHT_LEFT Gira leggermente verso sinistra.
TURN_SHARP_LEFT Gira tutto a sinistra.
UTURN_LEFT Fai una inversione a U a sinistra.
TURN_LEFT Gira a sinistra.
TURN_SLIGHT_RIGHT Gira leggermente verso destra.
TURN_SHARP_RIGHT Gira tutto a destra.
UTURN_RIGHT Fai una inversione a U a destra.
TURN_RIGHT Gira a destra.
STRAIGHT Vai dritto.
RAMP_LEFT Prendi la rampa a sinistra.
RAMP_RIGHT Prendi la rampa a destra.
MERGE Confluisci nel traffico.
FORK_LEFT Prendi il bivio a sinistra.
FORK_RIGHT Prendi il bivio a destra.
FERRY Prendi il traghetto.
FERRY_TRAIN Prendi il treno che conduce al traghetto.
ROUNDABOUT_LEFT Gira a sinistra alla rotonda.
ROUNDABOUT_RIGHT Gira a destra alla rotonda.
DEPART Manovra iniziale.
NAME_CHANGE Utilizzato per indicare la modifica del nome di una via.

RouteLegStepTravelAdvisory

Contiene le informazioni aggiuntive di cui è necessario informare l'utente, come possibili limitazioni delle zone di traffico in un passaggio di un tratto.

Rappresentazione JSON
{
  "speedReadingIntervals": [
    {
      object (SpeedReadingInterval)
    }
  ]
}
Campi
speedReadingIntervals[]

object (SpeedReadingInterval)

NOTA: questo campo al momento non viene compilato.

RouteLegStepLocalizedValues

Rappresentazioni testuali di determinate proprietà.

Rappresentazione JSON
{
  "distance": {
    object (LocalizedText)
  },
  "staticDuration": {
    object (LocalizedText)
  }
}
Campi
distance

object (LocalizedText)

Distanza di viaggio rappresentata in formato di testo.

staticDuration

object (LocalizedText)

Durata senza considerare le condizioni del traffico, rappresentata in formato testo.

RouteLegStepTransitDetails

Informazioni aggiuntive per RouteLegStep relative alle route TRANSIT.

Rappresentazione JSON
{
  "stopDetails": {
    object (TransitStopDetails)
  },
  "localizedValues": {
    object (TransitDetailsLocalizedValues)
  },
  "headsign": string,
  "headway": string,
  "transitLine": {
    object (TransitLine)
  },
  "stopCount": integer,
  "tripShortText": string
}
Campi
stopDetails

object (TransitStopDetails)

Informazioni sulle fermate di arrivo e partenza per il passaggio.

localizedValues

object (TransitDetailsLocalizedValues)

Rappresentazioni testuali delle proprietà di RouteLegStepTransitDetails.

headsign

string

Specifica la direzione in cui viaggiare su questa linea, indicata sul veicolo o alla fermata di partenza. Spesso la direzione corrisponde al capolinea.

headway

string (Duration format)

Specifica l'orario previsto come durata tra le partenze dalla stessa fermata in questo momento. Ad esempio, con un valore di 600 secondi per il rilevamento, ti aspetteresti un'attesa di dieci minuti se perdi l'autobus.

Una durata in secondi con un massimo di nove cifre frazionarie, che termina con "s". Esempio: "3.5s".

transitLine

object (TransitLine)

Informazioni sulla linea di trasporto pubblico utilizzata in questo passaggio.

stopCount

integer

Il numero di fermate dalla fermata di partenza alla fermata di arrivo. Questo conteggio include la fermata di arrivo, ma esclude la fermata di partenza. Ad esempio, se il tuo percorso parte dalla fermata A, passa per le fermate B e C e arriva alla fermata D, stopCount restituirà 3.

tripShortText

string

Il testo visualizzato negli orari e sui cartelli per indicare una corsa in trasporto pubblico per i passeggeri. Il testo deve identificare in modo univoco una corsa entro un giorno di servizio. Ad esempio, "538" è la tripShortText del treno Amtrak che parte da San Jose, CA alle 15:10 nei giorni feriali per Sacramento, CA.

TransitStopDetails

Dettagli sulle fermate dei mezzi di trasporto pubblico RouteLegStep.

Rappresentazione JSON
{
  "arrivalStop": {
    object (TransitStop)
  },
  "arrivalTime": string,
  "departureStop": {
    object (TransitStop)
  },
  "departureTime": string
}
Campi
arrivalStop

object (TransitStop)

Informazioni sulla fermata di arrivo per il passaggio.

arrivalTime

string (Timestamp format)

L'ora di arrivo prevista del passaggio.

Un timestamp in formato "Zulu" RFC3339 UTC, con risoluzione in nanosecondi e fino a nove cifre frazionarie. Esempi: "2014-10-02T15:01:23Z" e "2014-10-02T15:01:23.045123456Z".

departureStop

object (TransitStop)

Informazioni sulla fermata di partenza per il passaggio.

departureTime

string (Timestamp format)

L'ora di partenza stimata per il passaggio.

Un timestamp in formato "Zulu" RFC3339 UTC, con risoluzione in nanosecondi e fino a nove cifre frazionarie. Esempi: "2014-10-02T15:01:23Z" e "2014-10-02T15:01:23.045123456Z".

TransitStop

Informazioni su una fermata di trasporto pubblico.

Rappresentazione JSON
{
  "name": string,
  "location": {
    object (Location)
  }
}
Campi
name

string

Il nome della fermata di trasporto pubblico.

location

object (Location)

La posizione della fermata espressa in coordinate di latitudine/longitudine.

TransitDetailsLocalizedValues

Descrizioni localizzate dei valori per RouteTransitDetails.

Rappresentazione JSON
{
  "arrivalTime": {
    object (LocalizedTime)
  },
  "departureTime": {
    object (LocalizedTime)
  }
}
Campi
arrivalTime

object (LocalizedTime)

L'ora nella rappresentazione testuale formattata con il fuso orario corrispondente.

departureTime

object (LocalizedTime)

L'ora nella rappresentazione testuale formattata con il fuso orario corrispondente.

LocalizedTime

Descrizione localizzata dell'ora.

Rappresentazione JSON
{
  "time": {
    object (LocalizedText)
  },
  "timeZone": string
}
Campi
time

object (LocalizedText)

L'ora specificata come stringa in un determinato fuso orario.

timeZone

string

Contiene il fuso orario. Il valore è il nome del fuso orario definito nel database dei fusi orari IANA, ad esempio "America/New_York".

TransitLine

Contiene informazioni sulla linea di trasporto pubblico utilizzata in questo passaggio.

Rappresentazione JSON
{
  "agencies": [
    {
      object (TransitAgency)
    }
  ],
  "name": string,
  "uri": string,
  "color": string,
  "iconUri": string,
  "nameShort": string,
  "textColor": string,
  "vehicle": {
    object (TransitVehicle)
  }
}
Campi
agencies[]

object (TransitAgency)

L'azienda (o le aziende) di trasporto pubblico che gestisce questa linea di trasporto pubblico.

name

string

Il nome completo della linea di trasporto pubblico, ad esempio "8 Avenue Local".

uri

string

l'URI di questa linea di trasporto pubblico fornito dall'azienda di trasporto pubblico.

color

string

Il colore comunemente utilizzato nella segnaletica per questa linea. Rappresentato in esadecimale.

iconUri

string

L'URI dell'icona associato a questa riga.

nameShort

string

Il nome breve di questa linea di trasporto pubblico. Normalmente si tratta di un numero di riga, come "M7" o "355".

textColor

string

Il colore comunemente utilizzato nel testo sulla segnaletica di questa riga. Rappresentato in esadecimale.

vehicle

object (TransitVehicle)

Il tipo di veicolo che opera su questa linea di trasporto pubblico.

TransitAgency

Un'azienda di trasporto pubblico che gestisce una linea di trasporto pubblico.

Rappresentazione JSON
{
  "name": string,
  "phoneNumber": string,
  "uri": string
}
Campi
name

string

Il nome dell'azienda di trasporto pubblico.

phoneNumber

string

Numero di telefono formattato specifico per le impostazioni internazionali dell'azienda di trasporto pubblico.

uri

string

L'URI dell'azienda di trasporto pubblico.

TransitVehicle

Informazioni su un veicolo utilizzato per i percorsi di trasporto pubblico.

Rappresentazione JSON
{
  "name": {
    object (LocalizedText)
  },
  "type": enum (TransitVehicleType),
  "iconUri": string,
  "localIconUri": string
}
Campi
name

object (LocalizedText)

Il nome di questo veicolo in maiuscolo.

type

enum (TransitVehicleType)

Il tipo di veicolo utilizzato.

iconUri

string

L'URI di un'icona associata a questo tipo di veicolo.

localIconUri

string

L'URI dell'icona associata a questo tipo di veicolo, in base alla segnaletica di trasporto locale.

TransitVehicleType

Il tipo di veicoli per i percorsi di trasporto pubblico.

Enum
TRANSIT_VEHICLE_TYPE_UNSPECIFIED Non utilizzato.
BUS Autobus.
CABLE_CAR Un veicolo collegato a un cavo, di solito a terra. Le funivie aeree possono essere del tipo GONDOLA_LIFT.
COMMUTER_TRAIN Treno per pendolari.
FERRY Traghetto.
FUNICULAR Un veicolo trainato da un cavo su una ripida pendenza. In genere una funicolare è composta da due auto, ciascuna delle quali agisce come contrappeso per l'altra.
GONDOLA_LIFT Una funivia.
HEAVY_RAIL Ferrovia pesante.
HIGH_SPEED_TRAIN Treno ad alta velocità.
INTERCITY_BUS Autobus interurbano.
LONG_DISTANCE_TRAIN Treno a lunga percorrenza.
METRO_RAIL Metropolitana leggera.
MONORAIL Monorotaia.
OTHER Tutti gli altri veicoli.
RAIL Treno.
SHARE_TAXI Il taxi condiviso è un tipo di autobus che consente di scendere e far salire i passeggeri ovunque lungo il percorso.
SUBWAY Metropolitana leggera sotterranea.
TRAM Metropolitana leggera sopra il suolo.
TROLLEYBUS Filobus.

RouteLegTravelAdvisory

Contiene le informazioni aggiuntive di cui l'utente deve essere informato su un passaggio della tratta, come possibili limitazioni delle zone di traffico.

Rappresentazione JSON
{
  "tollInfo": {
    object (TollInfo)
  },
  "speedReadingIntervals": [
    {
      object (SpeedReadingInterval)
    }
  ]
}
Campi
tollInfo

object (TollInfo)

Contiene informazioni sui pedaggi relativi a RouteLeg specifico. Questo campo viene compilato solo se sono previsti pedaggi sulla RouteLeg. Se questo campo viene impostato, ma il campo secondarioestimatedPrice non è compilato, ci aspettiamo che la strada contenga pedaggi, ma non sappiamo un prezzo stimato. Se questo campo non esiste, significa che non è previsto alcun pagamento sul RouteLeg.

speedReadingIntervals[]

object (SpeedReadingInterval)

Intervalli di lettura della velocità con dettagli sulla densità del traffico. Applicabile in caso di preferenze di routing TRAFFIC_AWARE e TRAFFIC_AWARE_OPTIMAL. Gli intervalli coprono l'intera polilinea di RouteLeg senza sovrapposizioni. Il punto iniziale di un intervallo specificato corrisponde al punto finale dell'intervallo precedente.

Esempio:

polyline: A ---- B ---- C ---- D ---- E ---- F ---- G
speedReadingIntervals: [A,C), [C,D), [D,G).

RouteLegLocalizedValues

Rappresentazioni testuali di determinate proprietà.

Rappresentazione JSON
{
  "distance": {
    object (LocalizedText)
  },
  "duration": {
    object (LocalizedText)
  },
  "staticDuration": {
    object (LocalizedText)
  }
}
Campi
distance

object (LocalizedText)

Distanza di viaggio rappresentata in formato di testo.

duration

object (LocalizedText)

Durata che tiene conto delle condizioni del traffico, rappresentata in formato testo. Nota: se non hai richiesto informazioni sul traffico, questo valore corrisponderà a quello di staticDuration.

staticDuration

object (LocalizedText)

Durata senza considerare le condizioni del traffico, rappresentata in formato testo.

StepsOverview

Fornisce una panoramica su un elenco di RouteLegStep.

Rappresentazione JSON
{
  "multiModalSegments": [
    {
      object (MultiModalSegment)
    }
  ]
}
Campi
multiModalSegments[]

object (MultiModalSegment)

Informazioni riassunte sui diversi segmenti multimodali di RouteLeg.steps. Questo campo non viene compilato se RouteLeg non contiene segmenti multimodali nei passaggi.

MultiModalSegment

Fornisce informazioni riepilogative sui diversi segmenti multimodali di RouteLeg.steps. Un segmento multimodale è definito come uno o più RouteLegStep contigui che hanno lo stesso RouteTravelMode. Questo campo non viene compilato se RouteLeg non contiene segmenti multimodali nei passaggi.

Rappresentazione JSON
{
  "navigationInstruction": {
    object (NavigationInstruction)
  },
  "travelMode": enum (RouteTravelMode),
  "stepStartIndex": integer,
  "stepEndIndex": integer
}
Campi
navigationInstruction

object (NavigationInstruction)

Istruzioni di navigazione per il segmento multimodale.

travelMode

enum (RouteTravelMode)

La modalità di viaggio del segmento multimodale.

stepStartIndex

integer

L'indice RouteLegStep corrispondente che rappresenta l'inizio di un segmento multimodale.

stepEndIndex

integer

L'indice RouteLegStep corrispondente che rappresenta la fine di un segmento multimodale.

Area visibile

Un'area visibile con latitudine e longitudine, rappresentata da due punti diagonali opposti di low e high. Un'area visibile è considerata una regione chiusa, ovvero include i confini. I limiti di latitudine devono essere compresi tra -90 e 90 gradi inclusi, mentre i limiti di longitudine devono essere compresi tra -180 e 180 gradi inclusi. Ecco alcuni casi:

  • Se low = high, l'area visibile è composta da quel singolo punto.

  • Se low.longitude > high.longitude, l'intervallo di longitudine viene invertito (l'area visibile si sovrappone alla linea di longitudine di 180 gradi).

  • Se low.longitude = -180 gradi e high.longitude = 180 gradi, l'area visibile include tutte le longitudini.

  • Se low.longitude = 180 gradi e high.longitude = -180 gradi, l'intervallo di longitudine è vuoto.

  • Se low.latitude > high.latitude, l'intervallo di latitudine è vuoto.

È necessario compilare entrambi i campi low e high e la casella rappresentata non può essere vuota (come specificato dalle definizioni precedenti). Un'area visibile vuota causerà un errore.

Ad esempio, questa area visibile racchiude completamente New York City:

{ "low": { "latitude": 40.477398, "longitude": -74.259087 }, "high": { "latitude": 40.91618, "longitude": -73.70018 } }

Rappresentazione JSON
{
  "low": {
    object (LatLng)
  },
  "high": {
    object (LatLng)
  }
}
Campi
low

object (LatLng)

Obbligatoria. Il punto basso dell'area visibile.

high

object (LatLng)

Obbligatoria. Il punto più alto dell'area visibile.

RouteLocalizedValues

Rappresentazioni testuali di determinate proprietà.

Rappresentazione JSON
{
  "distance": {
    object (LocalizedText)
  },
  "duration": {
    object (LocalizedText)
  },
  "staticDuration": {
    object (LocalizedText)
  },
  "transitFare": {
    object (LocalizedText)
  }
}
Campi
distance

object (LocalizedText)

Distanza di viaggio rappresentata in formato di testo.

duration

object (LocalizedText)

Durata che tiene conto delle condizioni del traffico, rappresentata in formato testo. Nota: se non hai richiesto informazioni sul traffico, questo valore corrisponderà a staticDuration.

staticDuration

object (LocalizedText)

Durata senza considerare le condizioni del traffico, rappresentata in formato testo.

transitFare

object (LocalizedText)

Tariffa del trasporto pubblico rappresentata in formato testo.

GeocodingResults

Contiene GeocodedWaypoints per i punti di partenza, di destinazione e intermedi. Compilato solo per i waypoint dell'indirizzo.

Rappresentazione JSON
{
  "origin": {
    object (GeocodedWaypoint)
  },
  "destination": {
    object (GeocodedWaypoint)
  },
  "intermediates": [
    {
      object (GeocodedWaypoint)
    }
  ]
}
Campi
origin

object (GeocodedWaypoint)

Waypoint geocodificato di origine.

destination

object (GeocodedWaypoint)

Waypoint geocodificato di destinazione.

intermediates[]

object (GeocodedWaypoint)

Un elenco di waypoint intermedi geocodificati, ciascuno contenente un campo indice che corrisponde alla posizione in base zero del waypoint nell'ordine in cui sono stati specificati nella richiesta.

GeocodedWaypoint

Dettagli sui luoghi utilizzati come waypoint. Compilato solo per i waypoint dell'indirizzo. Include dettagli sui risultati di geocodifica al fine di determinare a cosa è stato geocodificato l'indirizzo.

Rappresentazione JSON
{
  "geocoderStatus": {
    object (Status)
  },
  "type": [
    string
  ],
  "partialMatch": boolean,
  "placeId": string,
  "intermediateWaypointRequestIndex": integer
}
Campi
geocoderStatus

object (Status)

Indica il codice di stato risultante dall'operazione di geocodifica.

type[]

string

I tipi del risultato sotto forma di zero o più tag di tipo. Tipi supportati: tipi di indirizzi e tipi di componenti degli indirizzi.

partialMatch

boolean

Indica che il geocodificatore non ha restituito una corrispondenza esatta per la richiesta originale, nonostante sia riuscita a far corrispondere parte dell'indirizzo richiesto. Ti consigliamo di esaminare la richiesta originale per verificare la presenza di errori ortografici e/o un indirizzo incompleto.

placeId

string

L'ID luogo per questo risultato.

intermediateWaypointRequestIndex

integer

L'indice del waypoint intermedio corrispondente nella richiesta. Compilato solo se il waypoint corrispondente è un waypoint intermedio.