ModRana offline routing guide

(New page: '''How does it work ?''' * searches for routes without the need for Internet connection * routes much faster than online routing * mode based results (Car, Walk, Cycle; Bus & Train get res...)
Line 1: Line 1:
-
'''How does it work ?'''
+
== How does it work ? ==
* searches for routes without the need for Internet connection
* searches for routes without the need for Internet connection
* routes much faster than online routing
* routes much faster than online routing
Line 5: Line 5:
* uses monav-server as backend
* uses monav-server as backend
-
'''Enable offline routing in 6 easy steps'''
+
== Enable offline routing in 6 easy steps ==
-
 
+
=== download routing data ===
-
* download routing data
+
Compatible routing data packs are available from [http://monav.openstreetmap.de monav.openstreetmap.de]. Just download a relevant pack for your area. :)
Compatible routing data packs are available from [http://monav.openstreetmap.de monav.openstreetmap.de]. Just download a relevant pack for your area. :)
It can be also done directly on the N900 like in this example:
It can be also done directly on the N900 like in this example:
Line 15: Line 14:
-
* unpack it to the Monav data folder
+
=== unpack it to the Monav data folder ===
This is the main Monav routing data folder:
This is the main Monav routing data folder:
Line 43: Line 42:
As their content is not currently used, you can remove the ''rendering_osm'' and ''rendering_vector'' folders.
As their content is not currently used, you can remove the ''rendering_osm'' and ''rendering_vector'' folders.
-
* start modRana
+
=== start modRana ===
-
* select preferred map data pack
+
=== select preferred map data pack ===
Go to '''menu->options->Navigation->Routing data''' and select a '''Monav data pack''' to use.
Go to '''menu->options->Navigation->Routing data''' and select a '''Monav data pack''' to use.
-
* select Monav as routing backend
+
=== select Monav as routing backend ===
In Go to '''menu->options->Navigation->Routing''' and select Monav as '''Routing provider'''.
In Go to '''menu->options->Navigation->Routing''' and select Monav as '''Routing provider'''.
-
* route :)
+
=== route :) ===
-
'''Known issues'''
+
== Known issues ==
* directions are very basic
* directions are very basic
Monav actually doesn't return a turn type, so I'll have to add an algorithm that detects different turn types and assigns corresponding description (Marble also does it like this).
Monav actually doesn't return a turn type, so I'll have to add an algorithm that detects different turn types and assigns corresponding description (Marble also does it like this).
 +
* some turns are missed
* some turns are missed
''Monav actually doesn't return turns at all'' - just points for the route & name + type for the route edges. So an algorithm that analyses all edge junctions on the route and decides what is turn and what is not (based on sharp turns, edges changing type or name, etc.). Currently every route type change is just used to trigger turn.
''Monav actually doesn't return turns at all'' - just points for the route & name + type for the route edges. So an algorithm that analyses all edge junctions on the route and decides what is turn and what is not (based on sharp turns, edges changing type or name, etc.). Currently every route type change is just used to trigger turn.
 +
* no address2address offline routing
* no address2address offline routing
The Monav GUI can be used for offline address search - I'll have to investigate if the same functionality can be used over the [http://code.google.com/r/thomasmiedema-python/source/browse/routingdaemon/routingserver.cpp monav-server] API.
The Monav GUI can be used for offline address search - I'll have to investigate if the same functionality can be used over the [http://code.google.com/r/thomasmiedema-python/source/browse/routingdaemon/routingserver.cpp monav-server] API.
-
'''Planed features'''
+
== Planed features ==
* modRana project hosted repository with up-to-date data packs
* modRana project hosted repository with up-to-date data packs
* built-in map pack downloader & updater
* built-in map pack downloader & updater

Revision as of 00:19, 11 September 2012

Contents

How does it work ?

  • searches for routes without the need for Internet connection
  • routes much faster than online routing
  • mode based results (Car, Walk, Cycle; Bus & Train get results for Car)
  • uses monav-server as backend

Enable offline routing in 6 easy steps

download routing data

Compatible routing data packs are available from monav.openstreetmap.de. Just download a relevant pack for your area. :) It can be also done directly on the N900 like in this example:

cd MyDocs
wget http://monav.openstreetmap.de/mapsets/Czech_Republic.zip


unpack it to the Monav data folder

This is the main Monav routing data folder:

/home/user/MyDocs/.maps/monav_data

The .maps folder is normally visible by default when connecting the N900 in USB mass-storage mode to Windows PCs, on Linux PCs you have to enable Show hidden files/folders to see it. If there is no monav_data folder in .maps, create it:

cd MyDocs/.maps
mkdir monav_data

and unzip you data packs into it.

Example (continuing where we left):

unzip Czech_Republic.zip -d .maps/monav_data/


You should get paths similar to these:

/home/user/MyDocs/.maps/monav_data/Czech_Republic
/home/user/MyDocs/.maps/monav_data/Czech_Republic/routing_bike
/home/user/MyDocs/.maps/monav_data/Czech_Republic/routing_car
/home/user/MyDocs/.maps/monav_data/Czech_Republic/routing_pedestrian

Optional As their content is not currently used, you can remove the rendering_osm and rendering_vector folders.

start modRana

select preferred map data pack

Go to menu->options->Navigation->Routing data and select a Monav data pack to use.

select Monav as routing backend

In Go to menu->options->Navigation->Routing and select Monav as Routing provider.

route :)

Known issues

  • directions are very basic

Monav actually doesn't return a turn type, so I'll have to add an algorithm that detects different turn types and assigns corresponding description (Marble also does it like this).

  • some turns are missed

Monav actually doesn't return turns at all - just points for the route & name + type for the route edges. So an algorithm that analyses all edge junctions on the route and decides what is turn and what is not (based on sharp turns, edges changing type or name, etc.). Currently every route type change is just used to trigger turn.

  • no address2address offline routing

The Monav GUI can be used for offline address search - I'll have to investigate if the same functionality can be used over the monav-server API.

Planed features

  • modRana project hosted repository with up-to-date data packs
  • built-in map pack downloader & updater