| Puntos clave | Detalles a recordar |
|---|---|
| 📖 Definición | GraphHopper es un motor de cálculo de rutas de código abierto. |
| 🚴 Ventajas | Rutas optimizadas para bicicleta privilegiando la seguridad y el confort. |
| ⚙️ Instalación | Docker o instalación local según sus necesidades. |
| 🛣️ Perfiles ciclistas | Personalización del tipo de bicicleta y las preferencias de carriles. |
| 🎯 Personalización | Parámetros de velocidad, desnivel y evitación de carreteras con mucho tráfico. |
| 📤 Exportación e integración | GPX, JSON e integración JavaScript en sus páginas WordPress. |
Si sueña con crear recorridos ciclistas a medida, GraphHopper se revela como un aliado robusto y flexible. Detrás de su interfaz minimalista se esconde un motor potente, capaz de procesar los datos de OpenStreetMap para trazar la ruta más adaptada a sus deseos, ya sea un paseo urbano o una ruta de múltiples etapas. Este artículo le guía paso a paso, desde la instalación del servicio hasta la exportación de sus trazas, pasando por la personalización detallada de los perfiles de bicicleta.
Sommaire
¿Por qué optar por GraphHopper en cicloturismo?
GraphHopper no es solo una simple herramienta de enrutamiento: se apoya en una comunidad activa, actualizaciones regulares y una base GPLv3. Usted se beneficia de un algoritmo cada vez más optimizado para bicicleta, capaz de integrar las nuevas vías y ciclovías. Comparando con otras soluciones, se observa que su modularidad (perfil JSON, API HTTP) ofrece una gran libertad, especialmente si desea alojarlo en su propio servidor para no depender de servicios externos.
Fiabilidad y rendimiento
El núcleo de GraphHopper se basa en estructuras de datos comprimidas, que aceleran el cálculo en memoria. Resultado: sus solicitudes de rutas ciclistas se ejecutan en pocos milisegundos, incluso sobre un conjunto de datos que cubre todo un país.
Flexibilidad de los perfiles
Se puede definir un perfil « bicicleta urbana », « bicicleta de carretera » o « MTB », ajustando las velocidades medias y los tipos de carreteras a evitar. Esta configuración muy granular mejora significativamente la calidad de la ruta propuesta al usuario.
Instalación y configuración inicial
Vía Docker
Inicie GraphHopper con unos pocos comandos: descargue la imagen oficial, monte un volumen para los datos OSM y exponga el puerto HTTP. Este enfoque aísla su entorno y garantiza una actualización simplificada.
docker pull graphhopper/graphhopper
docker run -d -v cheminguide/osm:/data -p 8989:8989 graphhopper/graphhopper
Instalación local
Si prefiere compilar usted mismo, clone el repositorio de GitHub, instale Java 11 y Maven, luego ejecute:
mvn clean package -DskipTests
Luego copie su archivo PBF de OpenStreetMap en la carpeta graphs y arranque la aplicación con java -jar web/target/graphhopper-web-*.jar server config.yml.
Creación de perfiles ciclistas personalizados
El núcleo de la personalización reside en los archivos JSON de profiles. Ejemplo para una bicicleta de montaña (MTB):
{
"profiles": [
{
"name": "vtt",
"vehicle": "bike",
"weighting": "fastest",
"turn_costs": false,
"hints": {"elevation": true}
}
]
}
Al ajustar weighting y hints, influye en la elección de los caminos: senderos forestales, carriles bici o carreteras secundarias.
Añadir un perfil mixto
Para una ruta que combine carretera asfaltada y senderos, copie el bloque JSON de un perfil existente, modifique la propiedad vehicle a custom_bike y cree una receta en graphhopper.yml para cargar su perfil mixto.
Generación de rutas a medida
Una vez que el servicio esté listo, consulte la API REST enviando un POST a /route con su perfil y coordenadas:
{
"points": [[48.8566,2.3522],[45.7640,4.8357]],
"profile": "bike",
"locale": "fr"
}
El resultado devuelto contiene varias secciones, incluyendo paths para la ruta GPS y instructions para cada segmento, con el nivel de zoom y la información de giro.
Exportación e integración en WordPress
Para incorporar su mapa interactivo, puede:
- Mostrar la ruta GPX en un reproductor JavaScript dedicado.
- Exponer directamente la API de GraphHopper detrás de un shortcode de WordPress.
En una plantilla PHP, recupere los puntos JSON, conviértalos a GeoJSON y luego intégrelos mediante Leaflet u OpenLayers. Si desea enriquecer la presentación, puede mostrar un mapa de carreteras de Francia como fondo para situar sus rutas.
Casos de uso avanzados y buenas prácticas
Además de la planificación ciclista, GraphHopper también se usa para rutas más específicas, por ejemplo la ruta de los Castillos del Loira o para trayectos con fuerte desnivel. Tenga en cuenta:
- Actualizar regularmente sus datos OSM para aprovechar los últimos senderos.
- Probar varios perfiles antes de ponerlos en producción.
- Limitar las solicitudes simultáneas o almacenar en caché las respuestas para evitar sobrecargas.
Preguntas frecuentes
¿Se necesita un servidor potente para alojar GraphHopper?
Un VPS con 2 vCPU y 4 GB de RAM es suficiente para un uso ciclista en un país entero. Más allá, pase a 8 GB para zonas muy densas.
¿Cómo obtener una exportación GPX compatible con GPS de senderismo?
La API ya devuelve un arreglo de puntos adaptado al formato GPX. Solo hay que transformar este flujo JSON en etiquetas XML <trkpt>.
¿Se pueden mezclar varios modos de transporte?
Sí: cree perfiles distintos para cada segmento (bicicleta + tren, bicicleta + ferry) y sincronice los puntos de transición.