[Routing] Binary file format

Adam Boardman osm-routing at adamboardman.co.uk
Tue Dec 11 12:17:31 GMT 2007


> Adam's WhereAmI software for Series 60 phones that uses his binary
> protocol does quite a good job, but in general everything disappears one
> zoom level earlier than you want it to.

It also supports UIQ3 and Series 80/90... the latest version (0.07) has 
names dissapearing even more quickly... london etc looked way too 
clutered, once I've moved over to using relations so that connected ways 
with the same name have the same place where its stored I'll probably 
start drawing names at higher zooms again, also I should implement some 
name prioritisation and collision detection... in terms of other 
features feel free to suggest new max zooms for visibility.

> Why not project into mercator before splitting into tiles, like the
> slippy map does, then it will be the same distance in both directions.

I've avoided mercator as it distorts things too much at the top/bottom 
of the map, I've gone for at the center of the current view make one 
pixel equal one meter (at max zoom). Pre v0.06 I think I had lat/lon 
reversed so things were double distorted!, but its fixed now, so circles 
are circles. Granted its a floating point multiple for x/y locations of 
everything every map draw, but I've never found the slowness of that to 
be at issue, symbian db vvv slow, text drawing vv slow, but a few 
multiplys it dosnt seem to have problems with.

> Also, I'd work in binary fractions rather than degrees.

Also I dont bother with binary fractions, just div/mul 1000000, gives 
you ~11cm rather than 9cm, which is still way more accurate than we 
need... Store everything in signed 32bit ints etc.

Cheers,

Adam.




More information about the Routing mailing list