Route

Incapsula un percorso, composto da una serie di tratti di strada collegati che uniscono le tappe di inizio, fine e intermedie.

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 del percorso tra i waypoint) che compongono il percorso. Ogni tratta corrisponde al viaggio tra due waypoint 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 itinerario che include un punto di passaggio intermedio via ha un tratto. L'ordine delle tratte corrisponde all'ordine dei waypoint 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)

Informazioni aggiuntive sul percorso.

optimizedIntermediateWaypointIndex[]

integer

Se ComputeRoutesRequest.optimize_waypoint_order è impostato su true, questo campo contiene l'ordinamento ottimizzato dei waypoint intermedi. In caso contrario, questo campo è vuoto. Ad esempio, supponiamo che l'input sia Origine: LA; Intermedi: 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.

RouteLeg

Incapsula un segmento tra waypoint 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 percorsa della tratta del percorso, in metri.

duration

string (Duration format)

La durata del tratto. 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 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.

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

polyline

object (Polyline)

Il polilinea complessivo per questo tratto. È inclusa la polilinea di ogni step.

startLocation

object (Location)

La posizione di partenza di questo tratto. Potrebbe essere diverso dal valore origin fornito. Ad esempio, se il origin fornito non si trova vicino a una strada, si tratta di un punto sulla strada.

endLocation

object (Location)

La posizione finale di questa gamba. Potrebbe essere diverso da 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)

Incapsula le informazioni aggiuntive di cui l'utente deve essere informato, ad esempio possibili limitazioni per zone a traffico limitato e così via in un tratto 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 unione polyline_type. Racchiude il tipo di polilinea. Il valore predefinito è encoded_polyline. polyline_type può essere solo uno dei seguenti:
encodedPolyline

string

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

geoJsonLinestring

object (Struct format)

Specifica un polilinea utilizzando il formato LineString GeoJSON.

RouteLegStep

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

integer

La distanza percorsa in questo passaggio, in metri. 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)

Incapsula le informazioni aggiuntive di cui l'utente deve essere informato, come la possibile limitazione di una zona di traffico in un passo.

RouteLegStepTravelAdvisory

Incapsula le informazioni aggiuntive di cui l'utente deve essere informato, come la possibile limitazione di una zona di traffico in un passo.

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

object (SpeedReadingInterval)

NOTA: questo campo non è attualmente compilato.

RouteLegTravelAdvisory

Incapsula le informazioni aggiuntive di cui l'utente deve essere informato, ad esempio possibili limitazioni per zone a traffico limitato e così via in un tratto del percorso.

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

object (TollInfo)

Include informazioni sui pedaggi relativi alla specifica RouteLeg. Questo campo viene compilato solo se prevediamo che ci siano pedaggi sulla RouteLeg. Se questo campo è impostato, ma il sottocampo estimatedPrice non è compilato, prevediamo che la strada contenga pedaggi, ma non conosciamo un prezzo stimato. Se questo campo non esiste, significa che non è previsto alcun pedaggio per RouteLeg.

speedReadingIntervals[]

object (SpeedReadingInterval)

Intervalli di lettura rapida che descrivono la densità del traffico. Applicabile in caso di preferenze di routing per TRAFFIC_AWARE e TRAFFIC_AWARE_OPTIMAL. Gli intervalli coprono l'intero polilinea del RouteLeg senza sovrapposizioni. Il punto di inizio di un intervallo specificato corrisponde al punto di fine dell'intervallo precedente.

Esempio:

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