Trabaja con polilíneas

Desarrolladores del Espacio Económico Europeo (EEE)

El método computeRoutes devuelve la ruta representada por una polilínea como parte de la respuesta. Puedes solicitar dos tipos de polilíneas:

  • Polilínea básica (predeterminada): Representa una ruta, pero sin información de tráfico incorporada en la polilínea. Las solicitudes que devuelven una polilínea básica se facturan según la tarifa de Routes Basic. Obtén más información sobre la facturación de la API de Routes.
  • Polilínea que tiene en cuenta el tráfico, contiene información sobre las condiciones del tráfico a lo largo de la ruta. Las condiciones de tráfico se expresan en términos de categorías de velocidad (NORMAL, SLOW, TRAFFIC_JAM) aplicables en un intervalo determinado de la polilínea. Las solicitudes de polilíneas que tienen en cuenta el tráfico se facturan a la tarifa de Rutas preferidas. Obtén más información sobre la facturación de la API de Routes.
  • Polilínea multimodal, contiene detalles del transporte público e información sobre el tráfico. Las solicitudes de polilíneas multimodales se facturan a la tarifa de Routes Preferred. Obtén más información sobre la facturación de la API de Routes.

Polilínea básica (predeterminada)

Una polilínea se representa con un objeto Polyline; una ruta es un array de coordenadas LatLngAltitude. Para devolver una polilínea básica, llama al método computeRoutes con la propiedad fields establecida en path y, luego, llama al método createPolylines en la instancia de la ruta para obtener un objeto Polyline.

En el siguiente ejemplo, se muestra cómo solicitar una polilínea básica:

// Define a basic routes request.
const requestWithBasicPolyline = {
  origin: '155 Steuart St, San Francisco, CA 94105',
  destination: '450 Powell St, San Francisco, CA 94102',
  travelMode: 'WALKING',
  fields: ['path'],  // Request path field to get a polyline.
};
  

Polilínea que tiene en cuenta el tráfico

Para solicitar una polilínea que tenga en cuenta el tráfico, agrega las siguientes propiedades a tu solicitud:

  1. Establece la propiedad travelMode en DRIVING.
  2. Establece la propiedad routingPreference en TRAFFIC_AWARE.
  3. Establece la propiedad extraComputations en TRAFFIC_ON_POLYLINE.
  4. Especifica los campos path, speedPaths y routeLabels.

En el siguiente ejemplo, se muestra cómo solicitar una polilínea que tenga en cuenta el tráfico:

// Define a traffic aware routes request.
const requestWithTraffic = {
  origin: '200 King St San Francisco, CA 94107',
  destination: 'Pier 41, San Francisco, CA 94133',
  travelMode: 'DRIVING',
  routingPreference: 'TRAFFIC_AWARE',
  extraComputations: ['TRAFFIC_ON_POLYLINE'],
  fields: ['speedPaths'],
};
  

Cómo mostrar polilíneas en un mapa

Para mostrar polilíneas en un mapa, llama a createPolylines en el objeto de ruta y, luego, usa el método setMap para establecer el mapa de la polilínea en el objeto de mapa. El objeto del mapa se usa para mostrar la polilínea en el mapa.

En el siguiente ejemplo, se muestra cómo mostrar una polilínea en un mapa:

  // Call createPolylines to create polylines for the first route.
  mapPolylines = routes[0].createPolylines();
  // Add polylines to the map.
  mapPolylines.forEach((polyline) => polyline.setMap(map));