Route

Encapsula una ruta, que consta de una serie de tramos conectados de ruta que unen los puntos de referencia de inicio, final e intermedios.

Representación 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
  ]
}
Campos
legs[]

object (RouteLeg)

Conjunto de tramos (segmentos de trayectos entre puntos de referencia) que conforman la ruta. Cada tramo corresponde al viaje entre dos puntos de referencia que no son de via. Por ejemplo, una ruta sin puntos de referencia intermedios tiene solo un segmento. Una ruta que incluye un punto de referencia intermedio que no es via tiene dos segmentos. Una ruta que incluye un punto de referencia intermedio via tiene un segmento. El orden de las secciones coincide con el orden de los puntos de referencia de origin a intermediates a destination.

distanceMeters

integer

Es la distancia de viaje de la ruta, en metros.

duration

string (Duration format)

Indica la cantidad de tiempo necesario para navegar por la ruta. Si configuras routingPreference como TRAFFIC_UNAWARE, este valor es el mismo que staticDuration. Si estableces routingPreference como TRAFFIC_AWARE o TRAFFIC_AWARE_OPTIMAL, este valor se calcula teniendo en cuenta las condiciones del tráfico.

Una duración en segundos con hasta nueve dígitos decimales, que terminan en “s”. Ejemplo: "3.5s".

staticDuration

string (Duration format)

Es la duración del viaje por la ruta sin tener en cuenta las condiciones de tráfico.

Una duración en segundos con hasta nueve dígitos decimales, que terminan en “s”. Ejemplo: "3.5s".

polyline

object (Polyline)

La polilínea de la ruta general Esta polilínea es la polilínea combinada de todos los legs.

description

string

Es una descripción de la ruta.

warnings[]

string

Array de advertencias que se mostrarán cuando se muestre la ruta.

viewport

object (Viewport)

Es el cuadro de límite del viewport de la polilínea.

travelAdvisory

object (RouteTravelAdvisory)

Información adicional sobre la ruta.

optimizedIntermediateWaypointIndex[]

integer

Si ComputeRoutesRequest.optimize_waypoint_order se establece como verdadero, este campo contiene el orden optimizado de los puntos de referencia intermedios. De lo contrario, este campo está vacío. Por ejemplo, supongamos que la entrada es Origen: Los Ángeles; Puntos intermedios: Dallas, Bangor, Phoenix; Destino: Nueva York; y el orden optimizado de puntos intermedios es: Phoenix, Dallas, Bangor. Entonces, este campo contiene los valores [2, 0, 1]. El índice comienza con 0 para el primer punto de referencia intermedio.

RouteLeg

Encapsula un segmento entre puntos de referencia que no son via.

Representación JSON
{
  "distanceMeters": integer,
  "duration": string,
  "staticDuration": string,
  "polyline": {
    object (Polyline)
  },
  "startLocation": {
    object (Location)
  },
  "endLocation": {
    object (Location)
  },
  "steps": [
    {
      object (RouteLegStep)
    }
  ],
  "travelAdvisory": {
    object (RouteLegTravelAdvisory)
  }
}
Campos
distanceMeters

integer

La distancia de viaje del tramo de la ruta, en metros.

duration

string (Duration format)

Es la cantidad de tiempo necesario para recorrer la etapa. Si route_preference se establece como TRAFFIC_UNAWARE, este valor es el mismo que staticDuration. Si route_preference es TRAFFIC_AWARE o TRAFFIC_AWARE_OPTIMAL, este valor se calcula teniendo en cuenta las condiciones de tráfico.

Una duración en segundos con hasta nueve dígitos decimales, que terminan en “s”. Ejemplo: "3.5s".

staticDuration

string (Duration format)

Es la duración del viaje por el tramo, calculada sin tener en cuenta las condiciones de tráfico.

Una duración en segundos con hasta nueve dígitos decimales, que terminan en “s”. Ejemplo: "3.5s".

polyline

object (Polyline)

El polilínea general de este tramo. Esto incluye la polilínea de cada step.

startLocation

object (Location)

Es la ubicación de inicio de este tramo. Puede ser diferente del origin proporcionado. Por ejemplo, cuando el origin proporcionado no está cerca de una ruta, se trata de un punto en la ruta.

endLocation

object (Location)

Es la ubicación de destino de este tramo. Puede ser diferente del destination proporcionado. Por ejemplo, cuando el destination proporcionado no está cerca de una ruta, este es un punto en la ruta.

steps[]

object (RouteLegStep)

Es un array de pasos que indican los segmentos dentro de esta etapa. Cada paso representa una instrucción de navegación.

travelAdvisory

object (RouteLegTravelAdvisory)

Encapsula la información adicional que se debe informar al usuario, como una posible restricción de zona de tráfico, etc., en un segmento de la ruta.

Polilínea

Encapsula una polilínea codificada.

Representación 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.
}
Campos
Campo de unión polyline_type. Encapsula el tipo de polilínea. El valor predeterminado es encoded_polyline. Las direcciones (polyline_type) solo pueden ser una de las siguientes opciones:
encodedPolyline

string

La codificación de cadenas de la polilínea con el algoritmo de codificación de polilínea

geoJsonLinestring

object (Struct format)

Especifica un polilínea con el formato de cadena de líneas GeoJSON.

RouteLegStep

Encapsula un segmento de un RouteLeg. Un paso corresponde a una sola instrucción de navegación. Los tramos de la ruta se componen de pasos.

Representación JSON
{
  "distanceMeters": integer,
  "staticDuration": string,
  "polyline": {
    object (Polyline)
  },
  "startLocation": {
    object (Location)
  },
  "endLocation": {
    object (Location)
  },
  "navigationInstruction": {
    object (NavigationInstruction)
  },
  "travelAdvisory": {
    object (RouteLegStepTravelAdvisory)
  }
}
Campos
distanceMeters

integer

Es la distancia de viaje de este paso, en metros. En algunas circunstancias, es posible que este campo no tenga un valor.

staticDuration

string (Duration format)

Es la duración del recorrido en este paso sin tener en cuenta las condiciones del tráfico. En algunas circunstancias, es posible que este campo no tenga un valor.

Una duración en segundos con hasta nueve dígitos decimales, que terminan en “s”. Ejemplo: "3.5s".

polyline

object (Polyline)

Es la polilínea asociada a este paso.

startLocation

object (Location)

Es la ubicación de inicio de este paso.

endLocation

object (Location)

Es la ubicación de destino de este paso.

navigationInstruction

object (NavigationInstruction)

Instrucciones de navegación.

travelAdvisory

object (RouteLegStepTravelAdvisory)

Encapsula la información adicional sobre la que se debe informar al usuario, como una posible restricción de zona de tráfico en un paso de tramo.

RouteLegStepTravelAdvisory

Encapsula la información adicional sobre la que se debe informar al usuario, como una posible restricción de zona de tráfico en un paso de tramo.

Representación JSON
{
  "speedReadingIntervals": [
    {
      object (SpeedReadingInterval)
    }
  ]
}
Campos
speedReadingIntervals[]

object (SpeedReadingInterval)

NOTA: Actualmente, este campo no se propaga.

RouteLegTravelAdvisory

Encapsula la información adicional que se debe informar al usuario, como una posible restricción de la zona de tráfico, etc., en un segmento de la ruta.

Representación JSON
{
  "tollInfo": {
    object (TollInfo)
  },
  "speedReadingIntervals": [
    {
      object (SpeedReadingInterval)
    }
  ]
}
Campos
tollInfo

object (TollInfo)

Encapsula información sobre los peajes en el RouteLeg específico. Este campo solo se propaga si esperamos que haya peajes en la RouteLeg. Si este campo está configurado, pero no se completa el subcampo estimatedPrice, se espera que la ruta incluya peajes, pero no conocemos un precio estimado. Si no existe este campo, no habrá peaje en el RouteLeg.

speedReadingIntervals[]

object (SpeedReadingInterval)

Intervalos de lectura de velocidad que detallan la densidad del tráfico Se aplica en el caso de las preferencias de enrutamiento de TRAFFIC_AWARE y TRAFFIC_AWARE_OPTIMAL. Los intervalos cubren toda la polilínea del RouteLeg sin superponerse. El punto de inicio de un intervalo especificado es el mismo que el punto final del intervalo anterior.

Ejemplo:

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