Route

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

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

object (RouteLeg)

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

distanceMeters

integer

La distanza da percorrere del 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 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 del percorso complessivo. Questa polilinea sarà la polilinea combinata di tutti i 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 ComputeRoutesRequest.optimize_waypoint_order è impostato su true, questo campo contiene l'ordine ottimizzato dei Waypoint intermedi, altrimenti il campo è vuoto. Ad esempio, supponiamo che l'input sia Origine: LA; Intermedi: Dallas, Bangor, Phoenix; Destinazione: New York; e l'ordine dei punti intermedi ottimizzato sia Phoenix, Dallas, Bangor. Questo campo contiene i valori [2, 0, 1]. L'indice inizia con 0 per il primo tappa intermedio.

RouteLeg

Incapsula 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)
  }
}
Campi
distanceMeters

integer

La distanza da percorrere per la tratta del percorso, in metri.

duration

string (Duration format)

Il tempo necessario per navigare nella 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 viaggio, 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 per questa gamba. Ciò include la polilinea di ogni step.

startLocation

object (Location)

La posizione di partenza di questa tappa. Potrebbe essere diverso dal valore origin fornito. Ad esempio, quando l'elemento origin fornito non è vicino a una strada, significa che è un punto della strada.

endLocation

object (Location)

La posizione finale di questa tappa. Potrebbe essere diverso dal valore destination fornito. Ad esempio, quando l'elemento destination fornito non è vicino a una strada, significa che è un punto della 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 di cui è necessario informare l'utente, come eventuali limitazioni delle zone a traffico e così via, nella tratta del percorso.

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 LineString GeoJSON

RouteLegStep

Incapsula un segmento di RouteLeg. Un passo corrisponde a una singola istruzione di navigazione. Le parti 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)
  }
}
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 in considerazione le 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 è necessario informare l'utente, come la possibile limitazione delle zone di traffico in un passo della tappa.

RouteLegStepTravelAdvisory

Contiene le informazioni aggiuntive di cui è necessario informare l'utente, come la possibile limitazione delle zone di traffico in un passo della tappa.

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

object (SpeedReadingInterval)

Intervalli di lettura della velocità che forniscono 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 RouteLegStep 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).

RouteLegTravelAdvisory

Contiene le informazioni aggiuntive di cui è necessario informare l'utente, come eventuali limitazioni delle zone a traffico e così via, nella tratta del percorso.

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

object (TollInfo)

Contiene le informazioni sui pedaggi sul RouteLeg specifico. Questo campo viene compilato solo se è previsto il pagamento di pedaggi sulla RouteLeg. Se questo campo è impostato ma il campo secondario EstimatedPrice non è compilato, prevediamo che la strada contenga pedaggi, ma non sappiamo un prezzo stimato. Se questo campo non esiste, non è previsto alcun pedaggio sulla RouteLeg.

speedReadingIntervals[]

object (SpeedReadingInterval)

Intervalli di lettura della velocità che forniscono 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 RouteLg 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).