MapMatching Rigidly Follows Traffic Laws
Nadie ha tomado este issue todavía.
- Lenguaje dominante
- Java
- Estrellas
- 438
- Forks
- 117
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Descripción
The mapMatching API doesn't work with routes that disobey traffic laws. We are providing routes for first-responders (fire, law-enforment, EMS, etc.) who don't always need to obey traffic laws so this is causing issues.
Here's an example (the image on the left is the recommended route; the image on the right is what is returned from mapMatching, not allowing the illegal left turn):

We are generating routes from our own OSRM server using custom profiles and want to use mapbox-navigation-ios for the navigation frontend. As noted in this tutorial and https://github.com/Project-OSRM/osrm-text-instructions/issues/269#issuecomment-449417857 the recommended approach is to use the mapMatching api to add voice and banner instructions to the custom generated route object (orsm-text-instructions could be used to add the simple text instructions but not the voice and banner instructions).
We don't even need the "matching" part of the mapMatching api... we already have the precise road geometry, we're not snapping fuzzy gps coordinates to a road network. We only need the voice and banner instructions but there doesn't seem to be a way to get just these without using the mapMatching API.
We could write our own package to produce the voice and text instructions based on the route object (returned from orsm) and the simple text instructions (returned from osrm-text-instructions) but it seems needless considering this is something already implemented by Mapbox but not available in any way (open source or api).
We plan to reach out directly to Mapbox support to talk about this but I wanted to post a public issue here so that other's could add to the discussion if they have similar issues or possible solutions.
related to #849
Guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Línea de trabajo
Comienza con la API mapMatching y revisa el issue relacionado #849; después, sigue cómo se pasan las rutas personalizadas de OSRM a través del Java SDK. Compara el comportamiento de ruta solicitado para first responders con el flujo actual de instrucciones de voz y de banner. Se consideraría terminado cuando exista una forma claramente definida y compatible de producir esas instrucciones sin rechazar rutas que infringen las leyes de tráfico.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- java
- Área
- api
- Tipo de issue
- Nueva funcionalidad
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Estado de actividad
- Estancado
- Claridad
- Necesita aclaración
- Aptitud para principiantes
- 25/100