Method: computeRoutes

Restituisce il percorso principale insieme a percorsi alternativi facoltativi, in base a un insieme di tappe terminal e intermedie.

NOTA:questo metodo richiede la specifica di una maschera del campo di risposta nell'input. Puoi fornire la maschera del campo di risposta utilizzando il parametro URL $fields o fields oppure un'intestazione HTTP/gRPC X-Goog-FieldMask (vedi i parametri e le intestazioni URL disponibili). Il valore è un elenco separato da virgole di percorsi di campi. 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 di campo di durata, distanza e polilinea a livello di percorso (un esempio di configurazione in produzione): X-Goog-FieldMask: routes.duration,routes.distanceMeters,routes.polyline.encodedPolyline

Google sconsiglia di utilizzare la maschera del campo di risposta con caratteri jolly (*) o di specificare la maschera del campo al livello superiore (routes), perché:

  • La selezione dei soli campi di cui hai bisogno consente al nostro server di salvare i cicli di calcolo, consentendoci di restituirti il risultato con una latenza inferiore.
  • La selezione dei soli campi necessari nel job di produzione garantisce prestazioni di latenza stabili. In futuro potremmo aggiungere altri campi di risposta e questi nuovi campi potrebbero richiedere tempi di calcolo aggiuntivi. Se selezioni tutti i campi o tutti i campi al livello superiore, si potrebbe verificare un peggioramento delle prestazioni, poiché ogni nuovo campo che aggiungiamo verrà incluso automaticamente nella risposta.
  • Se selezioni solo i campi necessari, la risposta avrà una dimensione inferiore e quindi una velocità effettiva di rete più elevata.

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)

Obbligatorio. Tappa di partenza.

destination

object (Waypoint)

Obbligatorio. Tappa di destinazione.

intermediates[]

object (Waypoint)

(Facoltativo) Una serie di tappe lungo il percorso (esclusi i punti di arrivo), dove fermarti o passare. Sono supportate fino a 25 tappe intermedie.

travelMode

enum (RouteTravelMode)

(Facoltativo) Specifica la modalità di trasporto.

routingPreference

enum (RoutingPreference)

(Facoltativo) Specifica come calcolare la route. Il server tenta di utilizzare la preferenza di routing selezionata per calcolare il percorso. Se la preferenza di routing genera un errore o una latenza molto 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)

(Facoltativo) Specifica la tua preferenza per la qualità della polilinea.

polylineEncoding

enum (PolylineEncoding)

(Facoltativo) Specifica la codifica preferita per la polilinea.

departureTime

string (Timestamp format)

(Facoltativo) L'orario di partenza. Se non imposti questo valore, verrà usato per impostazione predefinita l'ora in cui hai effettuato la richiesta. NOTA: puoi specificare un valore departureTime solo nel passato quando RouteTravelMode è impostato su TRANSIT. I viaggi con il trasporto pubblico sono disponibili per massimo 7 giorni nel passato o 100 giorni nel futuro.

Un timestamp nel formato RFC3339 UTC "Zulu" 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)

(Facoltativo) L'ora di arrivo. NOTA: può essere impostata solo quando il criterio RouteTravelMode è impostato su TRANSIT. Puoi specificare departureTime o arrivalTime, ma non entrambi. I viaggi con il trasporto pubblico sono disponibili per massimo 7 giorni nel passato o 100 giorni nel futuro.

Un timestamp nel formato RFC3339 UTC "Zulu" 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

(Facoltativo) Specifica se calcolare percorsi alternativi in aggiunta al percorso. Non vengono restituite route alternative per le richieste con tappe intermedie.

routeModifiers

object (RouteModifiers)

(Facoltativo) Un insieme di condizioni da soddisfare che influiscono sulla modalità di calcolo delle route.

languageCode

string

(Facoltativo) Il codice lingua BCP-47, ad esempio "en-US" o "sr-Latn". Per saperne di più, consulta la sezione Identificatore di impostazioni internazionali Unicode. Per l'elenco delle lingue supportate, consulta la sezione Supporto delle lingue. Se non fornisci questo valore, la lingua di visualizzazione viene dedotta dalla posizione della richiesta di percorso.

regionCode

string

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

units

enum (Units)

(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 il percorso, la tappa, la distanza del passo e la 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

(Facoltativo) Se impostato su true, il servizio cerca di ridurre al minimo il costo complessivo della route riordinando le tappe intermedie specificate. La richiesta non va a buon fine se una delle tappe intermedie è una tappa 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 va a buon fine. Se optimizeWaypointOrder viene impostato su false, il campo ComputeRoutesResponse.optimized_intermediate_waypoint_index è vuoto.

requestedReferenceRoutes[]

enum (ReferenceRoute)

(Facoltativo) Specifica quali route di riferimento calcolare nell'ambito della richiesta oltre alla route predefinita. Un percorso di riferimento è un percorso con un obiettivo di calcolo del percorso diverso da quello predefinito. Ad esempio, il calcolo del percorso di riferimento FUEL_EFFICIENT prende in considerazione vari parametri che genererebbero un percorso ottimale a basso consumo di carburante.

extraComputations[]

enum (ExtraComputation)

(Facoltativo) Un elenco di calcoli aggiuntivi che possono essere utilizzati per completare la richiesta. Nota: questi calcoli aggiuntivi possono restituire campi aggiuntivi nella risposta. Questi campi aggiuntivi devono essere specificati anche nella maschera del campo da restituire nella risposta.

trafficModel

enum (TrafficModel)

(Facoltativo) Specifica le ipotesi da utilizzare per il calcolo del tempo nel traffico. Questa impostazione influisce sul valore restituito nel campo della 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 il traffico e TrafficModel non è specificato.

transitPreferences

object (TransitPreferences)

(Facoltativo) Specifica le preferenze che influiscono sul percorso restituito per TRANSIT di percorsi. NOTA: puoi specificare un valore 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 una sola route quando non è specificata. Quando questo array contiene più voci, la prima è la route più consigliata. Se l'array è vuoto, significa che non è stato trovato alcun percorso.

fallbackInfo

object (FallbackInfo)

In alcuni casi, quando il server non è in grado di calcolare i risultati del percorso con tutte le preferenze di input, può ricorrere a un metodo di calcolo diverso. Quando viene utilizzata la modalità di riserva, questo campo contiene informazioni dettagliate sulla risposta di riserva. In caso contrario, questo campo non viene impostato.

geocodingResults

object (GeocodingResults)

Contiene informazioni di risposta di geocodifica per le tappe specificate come indirizzi.

PolylineQuality

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

Enum
POLYLINE_QUALITY_UNSPECIFIED Nessuna preferenza di qualità per la polilinea specificata. Il valore predefinito è OVERVIEW.
HIGH_QUALITY Specifica una polilinea di alta qualità, composta da più punti di OVERVIEW, a scapito di maggiori dimensioni di risposta. Utilizza questo valore quando hai bisogno di 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 di tipo di polilinea specificata. Il valore predefinito è ENCODED_POLYLINE.
ENCODED_POLYLINE Specifica una polilinea codificata utilizzando l'algoritmo di codifica delle polilinee.
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 hanno esito positivo.
FUEL_EFFICIENT Percorso a basso consumo di carburante. I percorsi etichettati con questo valore sono 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 il percorso.
FUEL_CONSUMPTION Consumo di carburante stimato 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.

Percorso

Contiene un percorso, composto da una serie di tratti di strada collegati che uniscono punti di partenza, 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 utili per identificare proprietà specifiche della route da confrontare con le altre.

legs[]

object (RouteLeg)

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

distanceMeters

integer

La distanza da percorrere in metri.

duration

string (Duration format)

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

Durata in secondi con un massimo di nove cifre frazionarie e termina con "s". Esempio: "3.5s".

staticDuration

string (Duration format)

La durata del viaggio senza tenere conto delle condizioni del traffico.

Durata in secondi con un massimo di nove cifre frazionarie e termina con "s". Esempio: "3.5s".

polyline

object (Polyline)

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

description

string

Una descrizione del percorso.

warnings[]

string

Un array di avvisi da mostrare quando si visualizza il percorso.

viewport

object (Viewport)

Il riquadro di delimitazione dell'area visibile della polilinea.

travelAdvisory

object (RouteTravelAdvisory)

Ulteriori informazioni sul percorso.

optimizedIntermediateWaypointIndex[]

integer

Se imposti optimizeWaypointOrder su true, questo campo contiene l'ordine ottimizzato delle tappe intermedie. In caso contrario, il campo è vuoto. Ad esempio, se fornisci un input come Origine: LA; Tappe intermedie: Dallas, Bangor, Phoenix; Destinazione: New York; e l'ordine intermedio ottimizzato dei waypoint è 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 percorso sicuro per il web con codifica base64 che può essere passato all'SDK di navigazione per ricostruire il percorso durante la navigazione e, in caso di cambio di percorso, rispettare l'intenzione originale quando hai creato il percorso chiamando v2.computeRoutes. I clienti devono trattare questo token come un blob opaco. Non confrontare il suo valore tra le richieste: questo token potrebbe cambiare anche se è stata restituita esattamente la stessa route. NOTA: Route.route_token è disponibile solo per le richieste che hanno impostato ComputeRoutesRequest.routing_preference su TRAFFIC_AWARE o TRAFFIC_AWARE_OPTIMAL. Route.route_token non è supportato per le richieste con tappe Via.

RouteLabel

Etichette per Route utili per identificare proprietà specifiche della route da confrontare con le altre.

Enum
ROUTE_LABEL_UNSPECIFIED Predefinito: non utilizzato.
DEFAULT_ROUTE Il valore predefinito "migliore" per il calcolo della route.
DEFAULT_ROUTE_ALTERNATE Un'alternativa al valore predefinito "migliore" percorso. Route di questo tipo verranno restituite quando viene specificato computeAlternativeRoutes.
FUEL_EFFICIENT Percorso a basso consumo di carburante. I percorsi etichettati con questo valore sono determinati come ottimizzati per i parametri Eco come il consumo di carburante.

RouteLeg

Contiene un segmento tra tappe non 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 da percorrere della tratta del percorso, in metri.

duration

string (Duration format)

Il tempo necessario per muovere la gamba. Se route_preference è impostato su TRAFFIC_UNAWARE, questo valore corrisponde a staticDuration. Se route_preference è TRAFFIC_AWARE o TRAFFIC_AWARE_OPTIMAL, questo valore viene calcolato prendendo in considerazione le condizioni del traffico.

Durata in secondi con un massimo di nove cifre frazionarie e termina con "s". Esempio: "3.5s".

staticDuration

string (Duration format)

La durata del viaggio attraverso una tratta, calcolata senza tenere conto delle condizioni del traffico.

Durata in secondi con un massimo di nove cifre frazionarie e termina con "s". Esempio: "3.5s".

polyline

object (Polyline)

La polilinea complessiva di questo tratto che include la polilinea di ogni step.

startLocation

object (Location)

La posizione iniziale di questo tratto. Questa posizione potrebbe essere diversa dal valore origin fornito. Ad esempio, se il valore origin fornito non è vicino a una strada, questo è un punto sulla strada.

endLocation

object (Location)

La posizione finale di questa gamba. Questa posizione potrebbe essere diversa dal valore destination fornito. Ad esempio, se il valore 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, ad esempio eventuali restrizioni in base al traffico, durante un tratto di percorso.

localizedValues

object (RouteLegLocalizedValues)

Rappresentazioni testuali delle proprietà di RouteLeg.

stepsOverview

object (StepsOverview)

Informazioni generali sui passaggi 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 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 polilinee.

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. I tratti di percorso sono costituiti 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 in metri di questo passo. In alcuni casi, questo campo potrebbe non avere un valore.

staticDuration

string (Duration format)

La durata del viaggio attraverso questo passaggio senza prendere in considerazione le condizioni del traffico. In alcuni casi, questo campo potrebbe non avere un valore.

Durata in secondi con un massimo di nove cifre frazionarie e termina con "s". Esempio: "3.5s".

polyline

object (Polyline)

La polilinea associata a questo passaggio.

startLocation

object (Location)

Il punto di partenza 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, ad esempio eventuali limitazioni di zone di traffico, in un passo di una tappa.

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 girare a sinistra, unire o dritto).

Enum
MANEUVER_UNSPECIFIED Non utilizzato.
TURN_SLIGHT_LEFT Gira leggermente a sinistra.
TURN_SHARP_LEFT Gira tutto a sinistra.
UTURN_LEFT Fai un'inversione a U a sinistra.
TURN_LEFT Gira a sinistra.
TURN_SLIGHT_RIGHT Gira leggermente a destra.
TURN_SHARP_RIGHT Gira tutto a destra.
UTURN_RIGHT Fai un'inversione a U verso destra.
TURN_RIGHT Gira a destra.
STRAIGHT Prosegui dritto.
RAMP_LEFT Prendi la rampa a sinistra.
RAMP_RIGHT Prendi la rampa a destra.
MERGE Unisciti al traffico.
FORK_LEFT Prendi la forcella a sinistra.
FORK_RIGHT Prendi la forchetta destra.
FERRY Prendi il traghetto.
FERRY_TRAIN Prendi il treno che porta al traghetto.
ROUNDABOUT_LEFT Alla rotonda, gira a sinistra.
ROUNDABOUT_RIGHT Alla rotonda, gira a destra.
DEPART Manovra iniziale.
NAME_CHANGE Utilizzato per indicare un cambio del nome di una via.

RouteLegStepTravelAdvisory

Contiene le informazioni aggiuntive di cui l'utente deve essere informato, ad esempio eventuali limitazioni di zone di traffico su un passo di una tappa.

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

object (SpeedReadingInterval)

NOTA: questo campo non è attualmente 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 prendere in considerazione le condizioni del traffico, rappresentata in forma di testo.

RouteLegStepTransitDetails

Informazioni aggiuntive per il RouteLegStep relativo ai percorsi 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 del 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 è la stazione capolinea.

headway

string (Duration format)

Specifica l'intervallo di tempo previsto come durata tra le partenze dalla stessa fermata in questo momento. Ad esempio, con un valore in secondi di anticipo di 600, dovresti aspettarti un'attesa di dieci minuti se perdi l'autobus.

Durata in secondi con un massimo di nove cifre frazionarie e termina con "s". Esempio: "3.5s".

transitLine

object (TransitLine)

Informazioni sulla linea di trasporto pubblico utilizzata in questo passaggio.

stopCount

integer

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

tripShortText

string

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

TransitStopDetails

Dettagli sulle fermate del trasporto pubblico per RouteLegStep.

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

object (TransitStop)

Informazioni sulla fermata di arrivo del passaggio.

arrivalTime

string (Timestamp format)

L'ora di arrivo stimata del passaggio.

Un timestamp nel formato RFC3339 UTC "Zulu" 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 del passaggio.

departureTime

string (Timestamp format)

L'orario di partenza stimato per il passaggio.

Un timestamp nel formato RFC3339 UTC "Zulu" 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 del 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) che gestisce questa linea di trasporto pubblico.

name

string

Il nome completo di questa 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 di questa linea. Rappresentata in formato esadecimale.

iconUri

string

L'URI dell'icona associata a questa riga.

nameShort

string

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

textColor

string

Il colore comunemente utilizzato nel testo della segnaletica per questa riga. Rappresentata in formato esadecimale.

vehicle

object (TransitVehicle)

Il tipo di veicolo utilizzato 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

Il numero di telefono formattato per la lingua specifica dell'azienda di trasporto pubblico.

uri

string

URI dell'azienda di trasporto pubblico.

TransitVehicle

Informazioni su un veicolo utilizzato nei percorsi del trasporto pubblico.

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

object (LocalizedText)

Il nome del 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 veicolo per i percorsi di trasporto pubblico.

Enum
TRANSIT_VEHICLE_TYPE_UNSPECIFIED Non utilizzato.
BUS Autobus.
CABLE_CAR Veicolo che funziona su un cavo, solitamente a terra. Le funivie aeree possono essere del tipo GONDOLA_LIFT.
COMMUTER_TRAIN Treni suburbani.
FERRY Traghetto.
FUNICULAR Veicolo tirato su una ripida pendenza con un cavo. Una funicolare è formata in genere da due vagoni, ciascuna delle quali funge da contrappeso.
GONDOLA_LIFT Una funivia aerea.
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 è una sorta di autobus con la possibilità di scendere e prendere 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 durante un passo di una tappa, ad esempio eventuali restrizioni in base alle zone di traffico.

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

object (TollInfo)

Contiene informazioni sui pedaggi per lo specifico RouteLeg. Questo campo viene compilato solo se sono previsti pedaggi sulla RouteLeg. Se questo campo è impostato ma il sottocampo "stimatoPrice" non è compilato, prevediamo che la strada contenga pedaggi, ma non conosciamo il prezzo stimato. Se questo campo non esiste, il RouteLeg non prevede alcun addebito.

speedReadingIntervals[]

object (SpeedReadingInterval)

Intervalli di lettura della velocità che descrivono in dettaglio la densità del traffico. Applicabile in caso di preferenze di routing per 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, rappresentate in formato di testo. Nota: se non hai richiesto informazioni sul traffico, questo valore sarà lo stesso di staticDuration.

staticDuration

object (LocalizedText)

Durata senza prendere in considerazione le condizioni del traffico, rappresentata in forma di testo.

StepsOverview

Fornisce informazioni generali su un elenco di RouteLegStep.

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

object (MultiModalSegment)

Informazioni riepilogative sui diversi segmenti multimodali dell'RouteLeg.steps. Questo campo non viene compilato se l'elemento 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 gli stessi RouteTravelMode. Questo campo non viene compilato se l'elemento RouteLeg non contiene segmenti multimodali nei passaggi.

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

object (NavigationInstruction)

Istruzione di navigazione per il segmento multimodale.

travelMode

enum (RouteTravelMode)

La modalità di spostamento del segmento multimodale.

stepStartIndex

integer

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

stepEndIndex

integer

L'indice RouteLegStep corrispondente alla fine di un segmento multimodale.

Area visibile

Un'area visibile di latitudine e longitudine, rappresentata da due punti diagonalmente opposti a low e high. Un'area visibile è considerata un'area chiusa, ovvero include il proprio confine. I limiti di latitudine devono essere compresi tra -90 e 90 gradi inclusi, mentre quelli di longitudine devono essere compresi tra -180 e 180 gradi inclusi. I vari casi includono:

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

  • Se low.longitude > high.longitude, l'intervallo di longitudine è invertito (l'area visibile supera la 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 genererà 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)

Obbligatorio. Il punto inferiore dell'area visibile.

high

object (LatLng)

Obbligatorio. 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 forma di testo. Nota: se non hai richiesto informazioni sul traffico, questo valore sarà lo stesso di staticDuration.

staticDuration

object (LocalizedText)

Durata senza prendere in considerazione le condizioni del traffico, rappresentata in forma di testo.

transitFare

object (LocalizedText)

Tariffa del trasporto pubblico rappresentata in formato di testo.

GeocodingResults

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

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

object (GeocodedWaypoint)

Tappa geocodificata di origine.

destination

object (GeocodedWaypoint)

Tappa geocodificata di destinazione.

intermediates[]

object (GeocodedWaypoint)

Un elenco di tappe intermedie geocodificate, ciascuna contenente un campo di indice corrispondente alla posizione su base zero del waypoint nell'ordine in cui sono stati specificati nella richiesta.

GeocodedWaypoint

Dettagli sulle località utilizzate come tappe. Compilato solo per le tappe dell'indirizzo. Include dettagli sui risultati di geocodifica al fine di determinare il luogo in cui è 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

Tipi del risultato, sotto forma di zero o più tag di tipo. Tipi supportati: tipi di indirizzo e tipi di componenti indirizzo.

partialMatch

boolean

Indica che il geocodificatore non ha restituito una corrispondenza esatta per la richiesta originale, anche se è riuscito 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 la tappa corrispondente è una tappa intermedia.