Estoy trabajando en un problema de enrutamiento de vehículos. Recientemente he pasado un poco de tiempo yendo a través de Google Maps API para ver si puedo imprimir múltiples rutas en el mismo mapa. Me gustaría que el siguiente: Route1: punto a, b, c, a ruta 2 punto a, d, e, f, un punto ruta 3 a, g, h, un y me gustaría cada ruta para tener una polilínea de color diferente. ¿Alguien puede ayudarme con esto?Uso de Google Maps 3 API para obtener múltiples rutas en un mapa
Respuesta
Sí, esto es bastante simple, una vez que lo dominas.
Desea utilizar el objeto directionsRenderer.
Lo importante es que quiere que todas sus rutas estén configuradas en conjunto, y luego desea iterar a través de ellas mediante un bucle. Crear un nuevo objeto directionsRenderer cada vez y configurarlo en el mapa cada vez. Dentro del ciclo, también querrás crear una nueva variable de polilínea que pases a las instruccionesRenderer con un color diferente cada vez. Solía tener algún código que hiciera esto, pero no sé dónde está en este momento.
Aquí hay un ejemplo de alguien que usa polilíneas de diferentes colores. :
http://www.geocodezip.com/violette_com_TestMap2c.html
Si se centra en estas dos líneas de código a continuación se verá cómo el color polilínea se establece y también la forma en que se pasa a la DirectionsRenderer.
directionsDisplayActual = new google.maps.DirectionsRenderer({suppressMarkers: true, polylineOptions: polylineOptionsActual})
var polylineOptionsActual = {
strokeColor: '#FF0000',
strokeOpacity: 1.0,
strokeWeight: 10
};
Siguiente waypts para sus rutas. :
http://code.google.com/apis/maps/documentation/javascript/examples/directions-waypoints.html
Otro buen ejemplo.
var request = {
origin: start,
destination: end,
waypoints: waypts,
optimizeWaypoints: true,
travelMode: google.maps.DirectionsTravelMode.DRIVING
};
directionsService.route(request, function(response, status) {
Si se enfoca en el código anterior en el ejemplo de google provisto, verá waypts var. Ahí es donde se establecerá tu marcador intermedio (como dices el punto b). Harás esto haciendo waypts.push(.....)
. El origen y el destino serán su punto a y punto b.
No debería ser demasiado difícil golpear algo juntos. Sugeriría que tomes un ejemplo de Google que esté más cerca de tus necesidades y que lo deslices hacia un proyecto simple y luego lo construyas desde allí.
- 1. Google Maps API 3: Obtener coordenadas del clic derecho
- 2. Google Maps API 3 cuadro de búsqueda
- 3. Rutas/rutas/caminos personalizados en Google Maps
- 4. API de mapa alternativo (como Google Maps)
- 5. Múltiples marcadores en un mapa de Google
- 6. Mostrar múltiples rutas en un mapa de Google
- 7. Google Maps API Múltiples marcadores con Infowindows
- 8. Google Static Maps API: generación de un mapa estático con rutas
- 9. URL para marcadores múltiples en Google Maps
- 10. Google Maps API limitaciones
- 11. google maps API 3 se aleja de fitBounds
- 12. API de Google Maps API 3: límite de límites de panorámica/mapa
- 13. API de MapQuest: ¿Alguna razón para usarla en Google Maps?
- 14. Cómo obtener el objeto MapOptions desde un mapa con Google Maps API v3
- 15. Google Maps API
- 16. cómo obtener la latitud, longitud onclick de un mapa en google maps api v3 javascript?
- 17. Alternativas a google maps api
- 18. API de Google Maps - Comportamiento "Offset" de mapa extraño
- 19. Cómo mostrar múltiples Google Maps por página con API V3
- 20. Agregar múltiples marcadores con infowindows (Google Maps API)
- 21. Eliminando rutas representadas en un mapa de Google
- 22. Demo para mostrar varias direcciones de Google (Google Maps API v3)
- 23. Zoom para centrar en un mapa en Google Maps API V3
- 24. Función Google Maps API map.getCenter()
- 25. Google Maps API v2 vs Google Maps API v3?
- 26. Cargando dinámicamente Google Maps api
- 27. Google Maps API - cargar los EE. UU.
- 28. Eliminar un mapa/forma de Google maps
- 29. Google Maps API Alerta clave
- 30. ¿Cómo uso el sensor de GPS de Google Maps API?
Gracias por su respuesta. Parece que esta sigue siendo una ruta única, solo con waypoints. ¿Sabes si es posible, por ejemplo, tener una ruta usando una distancia para caminar y otra para usar la distancia de manejo al mismo tiempo? –
No veo por qué no harías dos rutas diferentes. Uno que se enruta caminando y otro en el que se enruta, usted procesará cada uno de estos por separado y los colocará en el mapa con diferentes polilíneas. –
Estoy de acuerdo con @User Smith, utilicé polilíneas para construir mi ruta final. Ejemplo aquí https://code.google.com/p/gmaps-samples-v3/source/browse/trunk/io-2010-bootcamp/v3-polyline.html?r=111 – Purusartha