Directions

Clase DirectionsService

Clase google.maps.DirectionsService

Es un servicio para calcular instrucciones sobre cómo llegar entre dos o más lugares.

Llama al const {DirectionsService} = await google.maps.importLibrary("routes") para acceder.
Consulta Bibliotecas en la API de Maps JavaScript.

DirectionsService
DirectionsService()
Parámetros: Ninguno
Crea una instancia nueva de un DirectionsService que envía consultas de direcciones a los servidores de Google.
route
route(request[, callback])
Parámetros: 
Valor de devolución:  Promise<DirectionsResult>
Envía una solicitud de búsqueda de instrucciones sobre cómo llegar.

Interfaz de DirectionsRequest

Interfaz de google.maps.DirectionsRequest

Es una consulta de instrucciones sobre cómo llegar que se enviará a DirectionsService.

destination
Tipo:  string|LatLng|Place|LatLngLiteral
Ubicación de destino. Se puede especificar como una cadena para geocodificar, un LatLng o un Place. Obligatorio.
origin
Tipo:  string|LatLng|Place|LatLngLiteral
Ubicación de origen. Se puede especificar como una cadena para geocodificar, un LatLng o un Place. Obligatorio.
travelMode
Tipo:  TravelMode
Es el tipo de ruta solicitada. Obligatorio.
avoidFerries optional
Tipo:  boolean optional
Si es true, indica al servicio de Directions que evite los ferris siempre que sea posible. Opcional.
avoidHighways optional
Tipo:  boolean optional
Si es true, indica al servicio de Directions que evite las autopistas siempre que sea posible. Opcional.
avoidTolls optional
Tipo:  boolean optional
Si es true, indica al servicio de Directions que evite las rutas con peaje siempre que sea posible. Opcional.
drivingOptions optional
Tipo:  DrivingOptions optional
Es la configuración que se aplica solo a las solicitudes en las que travelMode es DRIVING. Este objeto no tendrá ningún efecto en otros modos de viaje.
language optional
Tipo:  string optional
Es un identificador del idioma en el que se deben mostrar los resultados, cuando sea posible. Consulta la lista de idiomas compatibles.
optimizeWaypoints optional
Tipo:  boolean optional
Si se establece en true, el objeto DirectionsService intentará reordenar los puntos de ruta intermedios proporcionados para minimizar el costo general de la ruta. Si se optimizan los puntos de referencia, inspecciona DirectionsRoute.waypoint_order en la respuesta para determinar el nuevo orden.
provideRouteAlternatives optional
Tipo:  boolean optional
Indica si se deben proporcionar rutas alternativas. Opcional.
region optional
Tipo:  string optional
Es el código de región que se usa como sesgo para las solicitudes de codificación geográfica. El código de región acepta un valor de ccTLD ("dominio de nivel superior") de dos caracteres. La mayoría de los códigos ccTLD son idénticos a los códigos ISO 3166-1, con algunas excepciones notables. Por ejemplo, el ccTLD del Reino Unido es "uk" (.co.uk), mientras que su código ISO 3166-1 es "gb" (técnicamente para la entidad de "El Reino Unido de Gran Bretaña e Irlanda del Norte").
transitOptions optional
Tipo:  TransitOptions optional
Es la configuración que se aplica solo a las solicitudes en las que travelMode es TRANSIT. Este objeto no tendrá ningún efecto en otros modos de viaje.
unitSystem optional
Tipo:  UnitSystem optional
Valor predeterminado: Es el sistema de unidades que se usa en el país de origen.
Sistema de unidades preferido para mostrar la distancia.
waypoints optional
Tipo:  Array<DirectionsWaypoint> optional
Es un array de puntos de referencia intermedios. Las instrucciones se calculan desde el origen hasta el destino a través de cada punto de referencia de este array. Consulta la guía para desarrolladores para conocer la cantidad máxima de puntos de referencia permitidos. No se admiten waypoints para indicaciones de transporte. Opcional.

Constantes de DirectionsStatus

Constantes de google.maps.DirectionsStatus

Es el estado que muestra DirectionsService cuando se completa una llamada a route(). Puedes especificarlos por valor o con el nombre de la constante. Por ejemplo, 'OK' o google.maps.DirectionsStatus.OK.

Llama al const {DirectionsStatus} = await google.maps.importLibrary("routes") para acceder.
Consulta Bibliotecas en la API de Maps JavaScript.

INVALID_REQUEST El DirectionsRequest proporcionado no es válido.
MAX_WAYPOINTS_EXCEEDED Se proporcionaron demasiados DirectionsWaypoint en el DirectionsRequest. Consulta la guía para desarrolladores para conocer la cantidad máxima de puntos de referencia permitidos.
NOT_FOUND No se pudo geocodificar al menos uno de los orígenes, destinos o puntos de referencia.
OK La respuesta contiene un DirectionsResult válido.
OVER_QUERY_LIMIT La página web superó el límite de solicitudes en un período demasiado corto.
REQUEST_DENIED La página web no tiene permiso para usar el servicio Directions.
UNKNOWN_ERROR No se pudo procesar una solicitud de instrucciones sobre cómo llegar debido a un error del servidor. La solicitud podría completarse si realizas un nuevo intento.
ZERO_RESULTS No se pudo encontrar una ruta entre el origen y el destino.

Interfaz DirectionsResult

Interfaz de google.maps.DirectionsResult

Es la respuesta de direcciones recuperada del servidor de direcciones. Puedes renderizarlos con un DirectionsRenderer o analizar este objeto y renderizarlo por tu cuenta. Debes mostrar las advertencias y los avisos sobre derechos de autor como se indica en las Condiciones del Servicio de Google Maps Platform. Ten en cuenta que, si bien este resultado es similar a JSON, no es estrictamente JSON, ya que incluye indirectamente objetos LatLng.

request
Es el DirectionsRequest que generó este resultado.
routes
Es un array de DirectionsRoutes, cada uno de los cuales contiene información sobre los tramos y los pasos que lo componen. Solo habrá una ruta, a menos que la DirectionsRequest se haya creado con provideRouteAlternatives establecido en true.
available_travel_modes optional
Tipo:  Array<TravelMode> optional
Contiene un array de medios de transporte disponibles. Este campo se devuelve cuando una solicitud especifica un modo de viaje y no obtiene resultados. La matriz contiene los modos de viaje disponibles en los países del conjunto específico de waypoints. Este campo no se devuelve si uno o más de los puntos de referencia son "puntos de referencia de ruta".
geocoded_waypoints optional
Es un array de DirectionsGeocodedWaypoint, cada uno de los cuales contiene información sobre la geocodificación del origen, el destino y los puntos de referencia.

Clase DirectionsRenderer

Clase google.maps.DirectionsRenderer

Renderiza las instrucciones obtenidas de DirectionsService.

Esta clase extiende MVCObject.

Llama al const {DirectionsRenderer} = await google.maps.importLibrary("routes") para acceder.
Consulta Bibliotecas en la API de Maps JavaScript.

DirectionsRenderer
DirectionsRenderer([opts])
Parámetros: 
Crea el renderizador con las opciones proporcionadas. Las instrucciones sobre cómo llegar se pueden renderizar en un mapa (como superposiciones visuales) o, de forma adicional, en un panel <div> (como instrucciones textuales).
getDirections
getDirections()
Parámetros: Ninguno
Valor de devolución:  DirectionsResult
Devuelve el conjunto actual de instrucciones del renderizador.
getMap
getMap()
Parámetros: Ninguno
Valor de devolución:  Map
Devuelve el mapa en el que se renderiza el DirectionsResult.
getPanel
getPanel()
Parámetros: Ninguno
Valor de devolución:  HTMLElement|null
Devuelve el panel <div> en el que se renderiza el DirectionsResult.
getRouteIndex
getRouteIndex()
Parámetros: Ninguno
Valor de devolución:  number
Devuelve el índice de ruta actual (basado en cero) que usa este objeto DirectionsRenderer.
setDirections
setDirections(directions)
Parámetros: 
Valor de retorno: Ninguno
Configura el renderizador para que use el resultado de DirectionsService. Si configuras un conjunto válido de instrucciones de esta manera, se mostrarán las instrucciones en el mapa y el panel designados del renderizador.
setMap
setMap(map)
Parámetros: 
Valor de retorno: Ninguno
Este método especifica el mapa en el que se renderizarán las instrucciones. Pasa null para quitar las instrucciones del mapa.
setOptions
setOptions(options)
Parámetros: 
Valor de retorno: Ninguno
Cambia la configuración de las opciones de este DirectionsRenderer después de la inicialización.
setPanel
setPanel(panel)
Parámetros: 
Valor de retorno: Ninguno
Este método renderiza las indicaciones en un objeto <div>. Pasa null para quitar el contenido del panel.
setRouteIndex
setRouteIndex(routeIndex)
Parámetros: 
  • routeIndexnumber
Valor de retorno: Ninguno
Establece el índice (basado en cero) de la ruta en el objeto DirectionsResult que se renderizará. De forma predeterminada, se renderizará la primera ruta del array.
Heredado: addListener, bindTo, get, notify, set, setValues, unbind, unbindAll
directions_changed
function()
Argumentos: Ninguno
Este evento se activa cuando cambian las instrucciones de ruta renderizadas, ya sea cuando se establece un nuevo DirectionsResult o cuando el usuario termina de arrastrar un cambio en la ruta de instrucciones.

Interfaz de DirectionsRendererOptions

Interfaz de google.maps.DirectionsRendererOptions

Este objeto define las propiedades que se pueden establecer en un objeto DirectionsRenderer.

directions optional
Tipo:  DirectionsResult optional
Son las instrucciones sobre cómo llegar que se mostrarán en el mapa o en un panel <div>, recuperadas como un objeto DirectionsResult de DirectionsService.
draggable optional
Tipo:  boolean optional
Si es true, permite al usuario arrastrar y modificar las rutas renderizadas por este DirectionsRenderer.
hideRouteList optional
Tipo:  boolean optional
Predeterminado: false
Esta propiedad indica si el renderizador debe proporcionar una lista de rutas seleccionables por el usuario que se muestra en el panel de indicaciones.
infoWindow optional
Tipo:  InfoWindow optional
Es el InfoWindow en el que se renderiza la información de texto cuando se hace clic en un marcador. Se reemplazará el contenido existente de la ventana de información y se cambiará su posición. Si no se especifica ninguna ventana de información, DirectionsRenderer creará y usará su propia ventana de información. Esta propiedad se ignorará si suppressInfoWindows se establece en true.
map optional
Tipo:  Map optional
Mapa en el que se mostrarán las instrucciones sobre cómo llegar.
markerOptions optional
Tipo:  MarkerOptions optional
Son las opciones de los marcadores. Todos los marcadores renderizados por DirectionsRenderer usarán estas opciones.
panel optional
Tipo:  HTMLElement optional
Es el <div> en el que se muestran los pasos de las instrucciones sobre cómo llegar.
polylineOptions optional
Tipo:  PolylineOptions optional
Son las opciones de las polilíneas. Todas las polilíneas renderizadas por DirectionsRenderer usarán estas opciones.
preserveViewport optional
Tipo:  boolean optional
Predeterminado: false
Si esta opción está configurada como true o si nunca se configuraron el centro y el nivel de zoom del mapa, el mapa de entrada se centrará y se ajustará al cuadro delimitador de este conjunto de instrucciones sobre cómo llegar.
routeIndex optional
Tipo:  number optional
Índice de la ruta dentro del objeto DirectionsResult. El valor predeterminado es 0.
suppressBicyclingLayer optional
Tipo:  boolean optional
Suprime la renderización de BicyclingLayer cuando se solicitan instrucciones sobre cómo llegar en bicicleta.
suppressInfoWindows optional
Tipo:  boolean optional
Suprime la renderización de ventanas de información.
suppressMarkers optional
Tipo:  boolean optional
Suprime la renderización de marcadores.
suppressPolylines optional
Tipo:  boolean optional
Suprime la renderización de polilíneas.

Interfaz DirectionsWaypoint

Interfaz de google.maps.DirectionsWaypoint

Un DirectionsWaypoint representa una ubicación entre el origen y el destino por la que se debe trazar la ruta del viaje.

location optional
Tipo:  string|LatLng|LatLngLiteral|Place optional
Ubicación del punto de referencia. Puede ser una cadena de dirección, un objeto LatLng o un objeto Place. Opcional.
stopover optional
Tipo:  boolean optional
Predeterminado: true
Si es true, indica que este punto de referencia es una parada entre el origen y el destino. Esto tiene el efecto de dividir la ruta en dos tramos. Si es false, indica que la ruta debe tener una tendencia a pasar por este punto de referencia, pero no dividirse en dos tramos. Esto es útil si deseas crear una ruta en respuesta a que el usuario arrastre puntos de referencia en un mapa.

Interfaz de DirectionsGeocodedWaypoint

Interfaz de google.maps.DirectionsGeocodedWaypoint

Es un solo punto de referencia con geocodificación.

partial_match optional
Tipo:  boolean optional
Indica si el geocodificador no devolvió una coincidencia exacta para la parada original, aunque sí pudo encontrar una coincidencia parcial para la dirección solicitada.
place_id optional
Tipo:  string optional
Es el ID de lugar asociado con el punto de ruta. Los IDs de lugar identifican de forma exclusiva un sitio en la base de datos de Google Places y en Google Maps. Obtén más información sobre los IDs de lugar en la guía para desarrolladores de la API de Places.
types optional
Tipo:  Array<string> optional
Es un array de cadenas que denota el tipo del elemento geocodificado que se devolvió. Para obtener una lista de las cadenas posibles, consulta la sección Tipos de componentes de dirección de la Guía para desarrolladores.

Interfaz DirectionsRoute

Interfaz de google.maps.DirectionsRoute

Es una sola ruta que contiene un conjunto de tramos en un DirectionsResult. Ten en cuenta que, si bien este objeto es similar a JSON, no es estrictamente JSON, ya que incluye objetos LatLng de forma directa e indirecta.

bounds
Tipo:  LatLngBounds
Son los límites de esta ruta.
copyrights
Tipo:  string
Es el texto de derechos de autor que se mostrará para esta ruta.
legs
Es un array de DirectionsLegs, cada uno de los cuales contiene información sobre los pasos que lo componen. Habrá un tramo para cada punto de referencia o destino de parada especificado. Por lo tanto, una ruta sin puntos de referencia de parada contendrá un DirectionsLeg y una ruta con un punto de referencia de parada contendrá dos.
overview_path
Tipo:  Array<LatLng>
Es un array de objetos LatLng que representa todo el recorrido de esta ruta. La ruta se simplifica para que sea adecuada en contextos en los que se requiere una pequeña cantidad de vértices (como las URLs de la API de Static Maps).
overview_polyline
Tipo:  string
Es una representación de polilínea codificada de la ruta en overview_path. Esta polilínea es una ruta aproximada (unificada) a partir de las indicaciones resultantes.
summary
Tipo:  string
Contiene una descripción textual breve de la ruta, adecuada para nombrarla y distinguirla de las alternativas.
warnings
Tipo:  Array<string>
Advertencias que se mostrarán cuando se muestren estas instrucciones sobre cómo llegar.
waypoint_order
Tipo:  Array<number>
Si optimizeWaypoints se estableció en true, este campo contendrá la permutación reordenada de los waypoints de entrada. Por ejemplo, si la entrada era:
  Origen: Los Ángeles
  Puntos intermedios: Dallas, Bangor, Phoenix
  Destino: Nueva York
y la salida optimizada se ordenó de la siguiente manera:
  Origen: Los Ángeles
  Puntos intermedios: Phoenix, Dallas, Bangor
  Destino: Nueva York
, este campo será un Array que contiene los valores [2, 0, 1]. Ten en cuenta que la numeración de los puntos de referencia comienza en cero.
Si alguno de los puntos de referencia de entrada tiene stopover establecido en false, este campo estará vacío, ya que la optimización de rutas no está disponible para esas búsquedas.
fare optional
Tipo:  TransitFare optional
Es la tarifa total de todo el viaje en transporte público. Solo se aplica a las solicitudes de transporte público.

Interfaz de DirectionsLeg

Interfaz de google.maps.DirectionsLeg

Es una sola etapa que consta de un conjunto de pasos en un DirectionsResult. Es posible que algunos campos de la tramo no se muestren en todas las solicitudes. Ten en cuenta que, si bien este resultado es similar a JSON, no es estrictamente JSON, ya que incluye objetos LatLng de forma directa e indirecta.

end_address
Tipo:  string
Es la dirección del destino de este tramo. Este contenido se debe leer tal como está. No analices la dirección con formato de manera programática.
end_location
Tipo:  LatLng
DirectionsService calcula las instrucciones sobre cómo llegar entre ubicaciones con la opción de transporte más cercana (por lo general, una ruta) en las ubicaciones de inicio y finalización. end_location indica el destino geocodificado real, que puede ser diferente del end_location del último paso si, por ejemplo, la ruta no está cerca del destino de este tramo.
start_address
Tipo:  string
Es la dirección del origen de este tramo. Este contenido se debe leer tal como está. No analices la dirección con formato de manera programática.
start_location
Tipo:  LatLng
DirectionsService calcula las instrucciones sobre cómo llegar entre ubicaciones con la opción de transporte más cercana (por lo general, una ruta) en las ubicaciones de inicio y finalización. start_location indica el origen geocodificado real, que puede ser diferente del start_location del primer paso si, por ejemplo, la ruta no está cerca del origen de este tramo.
steps
Es un array de DirectionsSteps, cada uno de los cuales contiene información sobre los pasos individuales de este tramo.
traffic_speed_entry
Tipo:  Array<?>
Es información sobre la velocidad del tráfico a lo largo de la etapa.
via_waypoints
Tipo:  Array<LatLng>
Es un array de puntos de ruta sin paradas a lo largo de este tramo, que se especificaron en la solicitud original.

Obsoleta en las rutas alternativas. La versión 3.27 será la última versión de la API que agregue via_waypoints adicionales en rutas alternativas.

Cuando uses el servicio Directions para implementar instrucciones sobre cómo llegar arrastrables, te recomendamos que inhabilite el arrastre de rutas alternativas. Solo la ruta principal debe ser arrastrable. Los usuarios pueden arrastrar la ruta principal hasta que coincida con una alternativa.

arrival_time optional
Tipo:  Time optional
Es la hora estimada de llegada para este tramo. Solo se aplica a las solicitudes de TRANSIT.
departure_time optional
Tipo:  Time optional
Es la hora de salida estimada para este tramo. Solo se aplica a las solicitudes de TRANSIT.
distance optional
Tipo:  Distance optional
Es la distancia total cubierta por este tramo. Esta propiedad puede no definirse, ya que es posible que se desconozca la distancia.
duration optional
Tipo:  Duration optional
Es la duración total de este tramo. Esta propiedad puede ser undefined, ya que es posible que se desconozca la duración.
duration_in_traffic optional
Tipo:  Duration optional
Es la duración total de este tramo, teniendo en cuenta las condiciones de tráfico que indica la propiedad trafficModel. Esta propiedad puede ser undefined, ya que es posible que se desconozca la duración.

Interfaz de DirectionsStep

Interfaz de google.maps.DirectionsStep

Un solo DirectionsStep en un DirectionsResult. Algunos campos pueden ser undefined. Ten en cuenta que, si bien este objeto es similar a JSON, no es estrictamente JSON, ya que incluye directamente objetos LatLng.

encoded_lat_lngs
Tipo:  string
Es una representación de polilínea codificada del paso. Esta es una ruta aproximada (unificada) del paso.
end_location
Tipo:  LatLng
Es la ubicación final de este paso.
end_point
Tipo:  LatLng
Es la ubicación final de este paso.
instructions
Tipo:  string
Instrucciones para este paso.
lat_lngs
Tipo:  Array<LatLng>
Es una secuencia de LatLng que describe el recorrido de este paso. Esta es una ruta aproximada (unificada) del paso.
maneuver
Tipo:  string
Contiene la acción que se debe realizar para el paso actual (turn-left, merge, straight, etcétera). Los valores están sujetos a cambios y se pueden ingresar valores nuevos sin aviso previo.
path
Tipo:  Array<LatLng>
Es una secuencia de LatLng que describe el recorrido de este paso. Esta es una ruta aproximada (unificada) del paso.
start_location
Tipo:  LatLng
Es la ubicación de inicio de este paso.
start_point
Tipo:  LatLng
Es la ubicación de inicio de este paso.
travel_mode
Tipo:  TravelMode
Es el modo de viaje que se usa en este paso.
distance optional
Tipo:  Distance optional
Es la distancia que se recorrió en este paso. Esta propiedad puede ser undefined, ya que es posible que se desconozca la distancia.
duration optional
Tipo:  Duration optional
Es el tiempo típico necesario para realizar este paso, expresado en segundos y en formato de texto. Esta propiedad puede ser undefined, ya que es posible que se desconozca la duración.
polyline optional