[Routing] Gosmore routing server

Nic Roets nroets at gmail.com
Wed May 21 11:01:32 BST 2008


gosmore is once again able to rapidly calculate routes between two
points on the map. I added a Common Gateway Interface (CGI) compatible
routing interface : If the QUERY_STRING environment variable is set,
it will not go interactive, but answer the query instead. For example,
executing

QUERY_STRING='flat=-25.778618&flon=28.290682&tlat=-25.768199&tlon=28.270595&fastest=1&v=motorcar'
./gosmore

will yield

Content-Type: text/text

-25.778618,28.290682
-25.778765,28.294502
-25.779473,28.294473
-25.779826,28.293441
...

gosmore will work well under normal CGI, because it has a fast start
up time, does not write to files and when one query gets interrupted
by a page fault, Linux may continue another query.

So if anyone wants to slap a web interface on it (e.g. export to GPX
and / or plot result on slippy map and / or convert to instructions
for humans), please let me know what you need. AFAIK OJW was
interested in such a project last year.

The current source is at http://www.rational.co.za/gosmore and it is
nearly mature enough for public consumption. A rebuild
of the complete planet currently takes about 3 hours on a dual core 64
bit machine with 2 GB RAM. (thanks to FR) (No bad considering how long
it took us to import just the TIGER data). The resultant pak file is
too large for the address space of 32 bit machines, but they will
happily run excerpts such as 'germany'.

It's not designed for routing from New York to LA, but in my
experience you will run into malformed junctions long before you run
out of memory or CPU power.

There is now also a HEADLESS switch if you only want to rebuild and /
or use the above mentioned CGI.

The one feature that I still need to implement is low-zoom rendering.

Regards,
Nic




More information about the Routing mailing list