Routing and Navigation on OpenStreetMap

I’m curious… who else is doing routing and/or navigation on the OpenStreetMap-Data?
I could need some help or insight with

  • efficient, interactive map-rendering
  • faster database-queries
  • algorithm route-finding and memory-management for long routes

If you look a the routing page in the wiki, you will find some applications that are involved with routing and OSM. There is also a routing mailing list which you probably want to browse through.

g I know because I wrote that wiki-page and am in that mailing-list.

Actually I was thinking about who of

  • the people behind these programs or
  • the ones not listed or
  • the ones with experience but no ready software
    are on this forum to discuss pratical matters.

Haha, ok.

People behind (from memory, might be wrong):

  • GPSDrive: Joerg Ostertag
  • RoadNav: Richard Lynch
  • Osmosis: Nic Roets
  • RoadMap: Paul Fox

Routing apps:

  • Navit
  • Vietnamese gps

But I’m afraid that not many hardcore OSM developers reside on this forum. Most of them (still) prefer mailing lists…

gosmore and not osmosis. Routing is taking a back seat to “rebuilding”, API0.5, searching, rendering and the WinCE port.

And if their not on the mailing list, they could be on the wiki. And if their not on the wiki, they could be “watching” the diary page.

Oops, sorry. Don’t know where I was…and I even looked it up. :roll_eyes:

I am doing routing with OSM data, but right now I do not know how OSM stores routing nodes information.

I read the OSM wiki and what I know is OSM is using tag to define a routing node.

Is it tag to a point? Does it mean that user need to manually tag a routing node? If it is then I think the way OSM define a node may not enough to build graph and routing nodes.

To define a graph and routing node we need to define at least 3 things:

  1. node information such as node id, node lat/lon
  2. link from this node to other nodes
  3. polyline that refer to this node and other routing information pertaining to this polyline such as one-way, speed, turn restriction…

Half year ago, I failed to convince OSM to take out segments and use polyline data structure to model polygons. OSM is now using relation to model polygons which is a nightmare to render program. In my opion, relation data structure is good for mapmaker to model the map but it is a bad design for render program because polygon can become supper polygons → very hard to clip and fill.

Now, OSM introduce new tags to capture routing node information. I really dont know how OSM use tags to store the routing node information that I mentioned above. I would like to involve in define OSM’s routing data structure process. With my experience I hope that OSM will come out with an easy way to capture routing node information. (At least, please do not use relation data structure to capture routing node information)

You can still extract node information by “recompiling” the whole data and identify points common to several ways as routing nodes.

By the way, I’m interested in developping some routing code, and especially developping a kind of “map compiler” that takes osm data and convert it to lightweight binary map files optimized for routing and realtime display


I would like routing just being able to do it, but atm it just seems to be a lot of talk. Just show us what need to be done and something cool done with it. I understand it’s hard to do on your own, but surely there are people out there that you can cooperate with.

The current map lacks routing info sure, but to get routing for me is two steps:

  1. have a routing application using the slippymap , that
    1.1 show you where you have problems on the map.
    1.2 shows routes.
  2. have simple rules you can follow to improve your local routing map.

Do someone here already have a tool ready to extract a routing graph from osm data?


Am I thinking too simple when pointing you to the routing page in the wiki? Routing is already done using OSM data afterall, although on a small scale.

My question was not very precise, I’m sorry.

Tools such as navit already have efficient converters to generate routing graphs from OSM data. However, I see nothing to generate graphs in a simple XML format (for instance, navit generates bin data). Navit converter seems to be well written (fast and efficient) and I would appreciate if it could output XML graph data!

I did not see anything like that in the wiki but I’m sure someone already has done something close to this.


I want to be even more specific, I want it on a webpage. The step from a XML graph output to a layer made up of SVG , VML or a png.