This object is in archive! 

Off-line Road Navigation: Using NAVIT as routing engine

bongo shared this idea 11 years ago
Declined

NAVIT is a free OSM based tool to do off-line road navigation, i.e. it does not need to connect to the internet to find a route. So it can also be used where there is no internet connection or internet connection would be too expensive.


LOCUS is able to call NAVIT with destination coords to find a route to a LOCUS POI.


Sounds good, but there seems to be a problem:


As long as the destination POI is on a road, NAVIT quick finds a route to go there. But if the POI is in a place a few steps away from a road on the OSM map, NAVIT does nothing ;-(


At a first glance, this looks like a NAVIT-problem, but maybe, it would be a better idea to solve this in LOCUS, because:


- you have no control over the location NAVIT wants you to lead to


- if NAVIT would just calculate a route to the next point on a road, as close as possible to the POI, this might be a point on a highway where it`s a bad idea to stop.


I think the best would be a 2-step solution:


- when selecting "navigation" within a POI window of LOCUS, LOCUS shows a map (osm) with a point on a road, as close as possible to the original POI.


- then you can select if you want to navigate to either the original POI, the "on a road" suggestion you get from LOCUS, or you can move the "on the road" POI to a position you would like to go.


- after selecting your destination, LOCUS calls the navigation tool, i.e. NAVIT with these coords.


- NAVIT calculates the route to these coords, and shall, if these coords miss on the NAVIT map (because of different OSM versions) take the "on a road" point as close as possible to the coords it gets from LOCUS.


i thinks this would be the optimum solution!


And there`s another thing to think about:


Maybe it`s possible to get the routing information out of NAVIT, i.e. to run NAVIT as a background task of LOCUS. This would allow to control NAVIT from within LOCUS, having the route shown on the LOCUS map and getting turn by turn instructions from LOCUS, running NAVIT under the hood.

Replies (1)

photo
1

1. Navit is Free, but under GPL licence, so no possible solution for using Navit as some background service


2. I`m not sure that a looot of work that have to be done on this task really worth it. How many times, will result of Navit (in case it work in way that Navit itself find nearest point) be useless? I think it`s minor part. Also map that Navit use for compute, should be different from Locus maps. Also your solution needs to use Vector maps in Locus for search for nearest road but you can use many other map sources.


So I personally see too much "but" and for me seems much more easy, to just run Navit, and in case you`ll not be satisfied with it`s result, just start navigation in Navit manually on better place near previous one

Replies have been locked on this page!