Method: computeRoutes

Restituisce il percorso principale insieme a percorsi alternativi facoltativi, considerati un insieme di terminali e tappe intermedie.

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

Ad esempio, con questo metodo:

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

Google sconsiglia l'utilizzo della maschera di campo con caratteri jolly (*) o specifica la maschera di campo al livello superiore (routes) perché:

  • La selezione dei soli campi necessari 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. Potremmo aggiungere altri campi di risposta in futuro e questi nuovi campi potrebbero richiedere più tempo di calcolo. Se selezioni tutti i campi o se selezioni tutti i campi al livello più alto, potresti riscontrare un peggioramento del rendimento perché qualsiasi nuovo campo aggiunto verrà automaticamente incluso nella risposta.
  • Se selezioni solo i campi necessari, ottieni una dimensione di risposta 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. Waypoint di origine.

destination

object (Waypoint)

Obbligatorio. Waypoint di destinazione.

intermediates[]

object (Waypoint)

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

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 particolarmente lunga, verrà 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'orario di partenza. Se non imposti questo valore, il valore predefinito corrisponderà all'ora in cui hai effettuato la richiesta. NOTA: puoi specificare un departureTime in passato solo quando RouteTravelMode è impostato su TRANSIT.

Un timestamp nel formato "Zulu" UTC RFC3339, con una risoluzione di 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.

Un timestamp nel formato "Zulu" UTC RFC3339, con una risoluzione di 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 oltre al percorso. Non vengono restituiti percorsi alternativi per le richieste con tappe intermedie.

routeModifiers

object (RouteModifiers)

Campo facoltativo. Un insieme di condizioni da soddisfare che influiscono sul modo in cui vengono calcolati i percorsi.

languageCode

string

Campo facoltativo. Il codice lingua BCP-47, ad esempio "en-US" o "sr-Latn". Per ulteriori informazioni, visita il sito http://www.unicode.org/reports/tr35/#Unicode_locale_identifier. Visita la pagina Assistenza per le lingue per l'elenco delle lingue supportate. Se non specifichi questo valore, la lingua di visualizzazione viene dedotta dal percorso della richiesta di percorso.

regionCode

string

Campo facoltativo. Il codice regione, specificato come valore di due caratteri ccTLD ("dominio di primo livello"). Per ulteriori informazioni, visita https://en.wikipedia.org/wiki/List_of_Internet_top-level_domains#Country_code_top-level_domains.

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 il percorso, la gamba, la distanza percorsa e la durata non sono interessate da questo valore. Se non specifichi questo valore, le unità di visualizzazione verranno dedotte dalla posizione della prima origine.

optimizeWaypointOrder

boolean

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

requestedReferenceRoutes[]

enum (ReferenceRoute)

Campo facoltativo. Specifica le route di riferimento da calcolare come parte della richiesta oltre alla route predefinita. Una route di riferimento è una route con un obiettivo di calcolo del percorso diverso rispetto alla route predefinita. Ad esempio, un calcolo del percorso di riferimento FUEL_EFFICIENT prende in considerazione vari parametri che genererebbero un percorso ottimale per il consumo di carburante.

extraComputations[]

enum (ExtraComputation)

Campo facoltativo. Un elenco di calcoli aggiuntivi che potrebbero 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 da restituire nella risposta.

trafficModel

enum (TrafficModel)

Campo facoltativo. Specifica le ipotesi da utilizzare per il calcolo del tempo di 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 il traffico è richiesto e TrafficModel non è specificato.

transitPreferences

object (TransitPreferences)

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

Corpo della risposta

v2.computeRoutes del 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 un solo percorso in caso contrario. Se questo array contiene più voci, la prima è la route più consigliata. Se la matrice è vuota, 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, 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, questo campo non è impostato.

geocodingResults

object (GeocodingResults)

Contiene informazioni sulla risposta di geocodifica per tappe specificati come indirizzi.

Qualità Polilinea

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

Enum
POLYLINE_QUALITY_UNSPECIFIED Nessuna preferenza di qualità polilinea specificata. Il valore predefinito è OVERVIEW.
HIGH_QUALITY Specifica una polilinea di alta qualità, composta da più punti rispetto a OVERVIEW, a un costo della risposta maggiore. Utilizza questo valore quando hai bisogno di una maggiore precisione.
OVERVIEW Specifica una polilinea panoramica, composta da un numero limitato di punti. Utilizza questo valore quando visualizzi una panoramica del percorso. Questa opzione ha una latenza delle richieste inferiore rispetto all'opzione HIGH_QUALITY.

Codifica di Polyline

Specifica il tipo di polilinea da restituire.

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

Unità

Un insieme di valori che specifica l'unità di misura utilizzata nel display.

Enum
UNITS_UNSPECIFIED Unità di misura non specificate. Il valore predefinito è l'unità di misura dedotta dalla richiesta.
METRIC Unità di misura metriche.
IMPERIAL Unità di misura imperiali (inglese).

Percorso di riferimento

Una route di riferimento supportata in ComputeRoutesRequest.

Enum
REFERENCE_ROUTE_UNSPECIFIED Non utilizzato. Richieste contenenti questo valore non riuscite.
FUEL_EFFICIENT Percorso a basso consumo di carburante. I percorsi etichettati con questo valore sono determinati per l'ottimizzazione in base a parametri quali il consumo di carburante.

Extracomputazione

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 sul pedaggio per i percorsi.
FUEL_CONSUMPTION Consumo stimato di carburante per i percorsi.
TRAFFIC_ON_POLYLINE Polilinee attente al traffico per i percorsi.
HTML_FORMATTED_NAVIGATION_INSTRUCTIONS Istruzioni di navigazione presentate come stringa di testo HTML formattata. Questi contenuti sono da leggere così come sono. Questi contenuti sono solo a scopo di visualizzazione. Non analizzarlo in modo programmatico.

Itinerario

Contiene un percorso, costituito da una serie di tratti di strada collegati che uniscono i punti di inizio, di fine 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 di Route utili per identificare le proprietà specifiche del percorso da confrontare con altri.

legs[]

object (RouteLeg)

Un insieme di gambe (segmenti di percorso tra punti intermedi) che compongono il percorso. Ogni gamba corrisponde alla corsa tra due Waypoints non via. Ad esempio, un percorso senza tappe intermedi ha una sola tratta. Una route che include un waypoint intermedio non via ha due tratti. Una rotta che include un Waypoint intermedio via ha una tratta. L'ordine delle gambe corrisponde all'ordine dei tappe da origin a intermediates e destination.

distanceMeters

integer

La distanza di percorrenza del percorso, in metri.

duration

string (Duration format)

Il tempo necessario per seguire il percorso. Se imposti routingPreference su TRAFFIC_UNAWARE, il valore sarà uguale 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 attraverso il percorso senza prendere in considerazione le 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 del percorso complessivo. Questa polilinea è la polilinea combinata di tutti i legs.

description

string

Una descrizione del percorso.

warnings[]

string

Un array di avvisi da mostrare quando si mostra 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 dei tappe intermedie. In caso contrario, il campo è vuoto. Ad esempio, se specifichi un input di Origine: LA; Waypoint intermedi: Dallas, Bangor, Phoenix; Destinazione: New York; e l'ordine intermedio dei Waypoint ottimizzati è Phoenix, Dallas, Bangor, questo campo conterrà i valori [2, 0, 1]. L'indice inizia con 0 per il primo waypoint intermedio fornito nell'input.

localizedValues

object (RouteLocalizedValues)

Rappresentazioni di testo delle proprietà di Route.

routeToken

string

Un token di percorso sicuro per il web e con codifica base64 che può essere trasmesso all'SDK di navigazione, che consente alla piattaforma di ricostruire la route durante la navigazione e, in caso di cambio di percorso, di rispettare l'intenzione originale quando hai creato la route chiamando v2.computeRoutes. I clienti devono considerare questo token come un blob opaco. Non è destinata alla lettura o alla mutazione. 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 che hanno punti di via.

Etichetta route

Etichette di Route utili per identificare le proprietà specifiche del percorso da confrontare con altri.

Enum
ROUTE_LABEL_UNSPECIFIED Predefinito - Non utilizzato.
DEFAULT_ROUTE La route "migliore" predefinita restituita per il calcolo delle route.
DEFAULT_ROUTE_ALTERNATE Un'alternativa al percorso "migliore" predefinito. Route come questa verranno restituite quando computeAlternativeRoutes è specificato.
FUEL_EFFICIENT Percorso a basso consumo di carburante. I percorsi etichettati con questo valore sono determinati per l'ottimizzazione in base ai parametri Eco, come il consumo di carburante.

Gamba del percorso

Contiene un segmento tra i 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 di percorrenza del percorso, in metri.

duration

string (Duration format)

Il tempo necessario per percorrere la gamba. Se il route_preference è impostato su TRAFFIC_UNAWARE, questo valore è uguale 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 viaggio attraverso la tratta, 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 comprende la polilinea di ogni step.

startLocation

object (Location)

La posizione iniziale di questa gamba. Questa località potrebbe essere diversa da quella specificata in origin. Ad esempio, quando il origin specificato non si trova vicino a una strada, questo è un punto sulla strada.

endLocation

object (Location)

La posizione finale di questa gamba. Questa località potrebbe essere diversa da quella specificata in destination. Ad esempio, quando il destination specificato non si trova vicino a una strada, questo è un punto sulla strada.

steps[]

object (RouteLegStep)

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

travelAdvisory

object (RouteLegTravelAdvisory)

Contiene le informazioni aggiuntive su cui deve essere informato l'utente, ad esempio possibili limitazioni di zona di traffico, su un percorso.

localizedValues

object (RouteLegLocalizedValues)

Rappresentazioni di testo delle proprietà di RouteLeg.

stepsOverview

object (StepsOverview)

Panoramica dei passaggi della 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 è encoded_polyline. polyline_type può essere solo uno dei seguenti:
encodedPolyline

string

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

geoJsonLinestring

object (Struct format)

Specifica una polilinea utilizzando il formato LineString GeoJSON

RouteLegStep

Contiene un segmento di RouteLeg. Un passaggio corrisponde a una singola istruzione di navigazione. Le gambe 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 di percorrenza di questo passaggio, in metri. In alcune circostanze, questo campo potrebbe non contenere un valore.

staticDuration

string (Duration format)

La durata del viaggio attraverso questo passaggio senza prendere in considerazione le condizioni del traffico. In alcune circostanze, questo campo potrebbe non contenere 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 su cui l'utente deve essere informato, ad esempio possibili limitazioni di zona di traffico, su un passaggio di gamba.

localizedValues

object (RouteLegStepLocalizedValues)

Rappresentazioni di testo 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 es. svolta a sinistra, unione, dritto e così via).

Enum
MANEUVER_UNSPECIFIED Non utilizzato.
TURN_SLIGHT_LEFT Svolta leggermente a sinistra.
TURN_SHARP_LEFT Svolta tutto a sinistra.
UTURN_LEFT Fai una svolta a sinistra.
TURN_LEFT Svolta a sinistra.
TURN_SLIGHT_RIGHT Ruota leggermente a destra.
TURN_SHARP_RIGHT Svolta tutto a destra.
UTURN_RIGHT Fai una svolta a U corretta.
TURN_RIGHT Svolta a destra.
STRAIGHT Vai dritto.
RAMP_LEFT Prendi la rampa a sinistra.
RAMP_RIGHT Prendi la rampa giusta.
MERGE Unisci nel traffico.
FORK_LEFT Prendi la forcella a sinistra.
FORK_RIGHT Prendi la forcella giusta.
FERRY Prendi il traghetto.
FERRY_TRAIN Prendi il treno che porta al traghetto.
ROUNDABOUT_LEFT Svolta a sinistra alla rotonda.
ROUNDABOUT_RIGHT Svolta a destra alla rotatoria.
DEPART Manovra iniziale.
NAME_CHANGE Utilizzato per indicare un cambiamento del nome della via.

Avvertenza - RouteLegStepTravel

Contiene le informazioni aggiuntive su cui deve essere informato l'utente, ad esempio possibili limitazioni del traffico in un passaggio della gamba.

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

object (SpeedReadingInterval)

NOTA: questo campo non è attualmente compilato.

ValoriLocalizzatiP non

Rappresentazioni di testo di determinate proprietà.

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

object (LocalizedText)

Distanza percorsa in forma di testo.

staticDuration

object (LocalizedText)

La durata senza tenere conto delle condizioni del traffico, rappresentata sotto forma di testo.

Dettaglio RouteLegStepTransit

Informazioni aggiuntive per RouteLegStep relative a TRANSIT percorsi.

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 di testo delle proprietà di RouteLegStepTransitDetails.

headsign

string

Specifica la direzione in cui percorrere su questa linea come indicato sul veicolo o alla fermata di partenza. La direzione è spesso la stazione del 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 la differenza, ti aspetteresti un'attesa di dieci minuti se dovessi perdere 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 partenza alla fermata dell'arrivo. Questo conteggio include la fermata di arrivo, ma esclude la fermata di partenza. Ad esempio, se il percorso parte dalla fermata A, attraversa le fermate B e C e arriva alla fermata D, stopCount restituisce 3.

tripShortText

string

Il testo visualizzato negli orari e sui cartelli per identificare un viaggio con il trasporto pubblico ai 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, in California.

Dettagli fermata trasporto pubblico

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'orario di arrivo previsto del passaggio.

Un timestamp nel formato "Zulu" UTC RFC3339, con una risoluzione di 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 del passaggio.

departureTime

string (Timestamp format)

L'orario di partenza stimato per il passaggio.

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

Fermata trasporto pubblico

Informazioni su una fermata del 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 nelle coordinate di latitudine/longitudine.

Valori TransitLocalLocalizedValues

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.

Ora localizzata

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".

Linea di trasporto pubblico

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 di trasporto che gestisce questa linea di trasporto pubblico.

name

string

Il nome completo di questa linea di trasporto pubblico, ad esempio "Via Verdi Corso Italia".

uri

string

L'URI di questa linea di trasporto pubblico indicato dall'azienda di trasporto pubblico.

color

string

Il colore di uso comune nella segnaletica per questa linea. Rappresentato in esadecimale.

iconUri

string

L'URI dell'icona associata a questa riga.

nameShort

string

Il nome breve di questa linea di trasporto pubblico. In genere questo nome è un numero di riga, ad esempio "M7" o "355".

textColor

string

Il colore comunemente utilizzato nel testo sull'insegna per questa linea. Rappresentato in esadecimale.

vehicle

object (TransitVehicle)

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

Azienda trasporto pubblico

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 dell'azienda di trasporto pubblico.

uri

string

URI dell'azienda di trasporto pubblico.

Trasporto pubblico

Informazioni su un veicolo utilizzato nei 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 locale per il trasporto pubblico.

Tipo di veicolo trasporto pubblico

Il tipo di veicoli per i percorsi del trasporto pubblico.

Enum
TRANSIT_VEHICLE_TYPE_UNSPECIFIED Non utilizzato.
BUS Autobus.
CABLE_CAR Un veicolo che funziona su un cavo, solitamente a terra. Le funivie aeree possono essere del tipo GONDOLA_LIFT.
COMMUTER_TRAIN Ferrovia suburbana.
FERRY Traghetto.
FUNICULAR Un veicolo che sale su una pendenza. Una funicolare di solito è costituita da due carrozze, ciascuna delle quali funge da 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 Ferrovia.
SHARE_TAXI Il taxi condiviso è un tipo di autobus con la possibilità di scendere e prendere passeggeri ovunque sul suo percorso.
SUBWAY Metropolitana leggera sotterranea.
TRAM Metropolitana leggera fuori terra.
TROLLEYBUS Tram.

Avvertenza RouteLegTravel

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

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

object (TollInfo)

Contiene informazioni sui pedaggi per l'RouteLeg specifico. Questo campo viene compilato solo se ci sono pedaggi per RouteLeg. Se questo campo viene impostato, ma il campo stimato del prezzo non è compilato, prevediamo che la strada contenga pedaggi, ma non conosciamo un prezzo stimato. Se questo campo non esiste, non verrà addebitato alcun costo sulla RouteLeg.

speedReadingIntervals[]

object (SpeedReadingInterval)

Intervalli di lettura della velocità che descrivono nel dettaglio la densità del traffico. Applicabile in caso di preferenze di routing di TRAFFIC_AWARE e TRAFFIC_AWARE_OPTIMAL. Gli intervalli coprono l'intera polilinea di RouteLeg senza sovrapposizioni. Il punto di inizio di un intervallo specificato è uguale al punto di fine dell'intervallo precedente.

Esempio:

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

ValoriLegLocalizzati

Rappresentazioni di testo di determinate proprietà.

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

object (LocalizedText)

Distanza percorsa in forma di testo.

duration

object (LocalizedText)

Durata che tiene conto delle condizioni del traffico, sotto forma di testo. Nota: se non hai richiesto informazioni sul traffico, questo valore sarà lo stesso di staticDuration.

staticDuration

object (LocalizedText)

La durata senza tenere conto delle condizioni del traffico, rappresentata sotto forma di testo.

Panoramica dei passaggi

Fornisce una panoramica delle informazioni relative a un elenco di RouteLegStep.

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

object (MultiModalSegment)

Riepiloga le informazioni sui diversi segmenti multimodali di RouteLeg.steps. Questo campo non viene compilato se RouteLeg non contiene segmenti multimodali nei passaggi.

Segmento multimodale

Fornisce un riepilogo delle informazioni sui diversi segmenti multimodali di RouteLeg.steps. Un segmento multimodale è definito come uno o più RouteLegStep contigui con 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 si trova alla fine di un segmento multimodale.

Area visibile

Un'area visibile di latitudine e longitudine rappresentata da due diagonali di fronte a low e high punti. Un'area visibile è considerata una regione chiusa, ovvero include il suo confine. I limiti di latitudine devono essere compresi tra -90 e 90 gradi inclusi e i limiti di longitudine devono essere compresi tra -180 e 180 gradi inclusi. Vari casi includono:

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

  • Se low.longitude > high.longitude, l'intervallo di longitudine è invertito (l'area visibile attraversa la linea di longitudine a 180°).

  • 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 sia low sia high e la casella rappresentata non può essere vuota (come specificato dalle definizioni riportate sopra). Se viene visualizzata un'area visibile vuota, verrà restituito un errore.

Ad esempio, questa area visibile comprende interamente New York:

{ "low": { "longitudine": 40.477398, "longitudine": -74.259087 }, "alto": { "longitudine": 40.91618, "longitudine": -73.70018 } }

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

object (LatLng)

Obbligatorio. Il punto basso dell'area visibile.

high

object (LatLng)

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

Valori RouteLocalized

Rappresentazioni di testo di determinate proprietà.

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

object (LocalizedText)

Distanza percorsa in forma di testo.

duration

object (LocalizedText)

Durata che tiene conto delle condizioni del traffico, sotto forma di testo. Nota: se non hai richiesto informazioni sul traffico, questo valore sarà lo stesso di staticDuration.

staticDuration

object (LocalizedText)

La durata senza tenere conto delle condizioni del traffico, rappresentata sotto forma di testo.

transitFare

object (LocalizedText)

Tariffa per il trasporto pubblico rappresentata sotto forma di testo.

Risultati di geocodifica

Contiene GeocodedWaypoints per i punti di arrivo, di destinazione e intermedi. Completato solo per i Waypoint degli indirizzi.

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

object (GeocodedWaypoint)

Waypoint geocodificato dell'origine.

destination

object (GeocodedWaypoint)

Waypoint geocodificato di destinazione.

intermediates[]

object (GeocodedWaypoint)

Un elenco di tappe intermedie geocodificate contenenti un campo indice che corrisponde alla posizione zero-point del punto di arrivo nell'ordine in cui sono stati specificati nella richiesta.

Punto di accesso geocodificato

Dettagli sui luoghi utilizzati come tappe. Completato solo per i Waypoint degli indirizzi. Include i dettagli sui risultati della geocodifica allo scopo 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

Il tipo o i tipi di risultati, sotto forma di zero o più tag di tipo. Tipi supportati: https://developers.google.com/maps/documentation/geocoding/requests-geocoding#Types

partialMatch

boolean

Indica che il geocodificatore non ha restituito una corrispondenza esatta per la richiesta originale, anche se è riuscita a trovare una corrispondenza con una 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 del luogo per questo risultato.

intermediateWaypointRequestIndex

integer

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