[mapserver-users] Any pointers on calculating the shortest route between 2 points?
Adrian Popa
adrian_gh.popa at romtelecom.ro
Mon Aug 24 00:20:17 PDT 2009
Hello everybody,
Sorry if this question is not specific to mapserver, but I was wondering
if I could get some pointers on where to start with this problem.
So, I have a layer with street numbers for some cities, and I want to be
able to display the route between 2 such points. I've done something
similar in the past by using Boost (as a perl module) and loading the
network as a graph and using Dijkstra algorithm to calculate the
shortest path between 2 points. The problem is - the data I had clearly
defined the nodes of the graph (vertexes) and the edges (links) between
the nodes, so I was able to easily build the graph and interpret the
results.
The data I have now looks like this (for a record):
OGRFeature(Streets_geocoding):1123
Name (String) = West St
FromLeft (Integer) = 3
ToLeft (Integer) = 5
FromRight (Integer) = 12
ToRight (Integer) = 32
Link_ID (Real) = 588532637
Judet (String) = TIMIS
Localitate (String) = TIMISOARA
L_PostCode (String) = 300609
R_PostCode (String) = 300609
Style = PEN(w:2px,c:#ff00ff,id:"mapinfo-pen-2.ogr-pen-0")
LINESTRING (21.17921 45.751309999999997,21.18102 45.753790000000002)
The problem is I have lots of small links (street segments) but without
an obvious way to link them together (maybe Link_ID is something useful
- I'll look into it).
My question is: In your opinion - how is "routing" implemented on maps
(e.g. on GPS receivers) - Do the maps have special information, or
should I manage with what I have?
Any pointers are helpful, thanks
Regards,
Adrian
More information about the MapServer-users
mailing list