Commit: r766: Write more of the *.mp-data.

Version 766 was commited by robert on 2008-12-04 00:37:44 +0000 (Thu, 04 Dec 2008) Write more of the *.mp-data. Oneway streets now work. DirIndicator is set, though I don't know what it does. The road class from RouteParams is set in various places, not really sure they should all get the same. (Why is it "destination" class in an arc?) Speed is written. Forbidden vehicle types are written, sorted out except for emergency and delivery which appear to function differenlty.

Hi, Robert! On 12/4/08, svn commit <svn@mkgmap.org.uk> wrote:
Version 766 was commited by robert on 2008-12-04 00:37:44 +0000 (Thu, 04 Dec 2008)
Write more of the *.mp-data.
Oneway streets now work. DirIndicator is set, though I don't know what it does. The road class from RouteParams is set in various places, not really sure they should all get the same. (Why is it
They shouldn't be the same. Some ascii art: ----------------TRUNK ROAD------L---------------- -- local neighborhood streets -| |--- --- many small streets --- | \ -------L- OTHER TRUNK ROAD ---------------- The small streets should be class 0, TRUNKs class1, etc. highways class 6.
From the small streets you have links to L, how to get on the next road class /i'm not sure but highway herarchies sounds like this/
"destination" class in an arc?)
That's for reading. If you are on node class 5 skip nodes with class < 5. The graph is searched bidirectional. Start from pos and dest and try to go to a bigger road class. At some point they meet each other. In other words when you get on the highway stay there, don't route along residental streets. -- have fun, alex

Hi Alex, thanks for your help! On Dec 4, 2008, at 13:44, Alexander Atanasov wrote:
On 12/4/08, svn commit <svn@mkgmap.org.uk> wrote:
what it does. The road class from RouteParams is set in various places, not really sure they should all get the same. (Why is it
They shouldn't be the same. Some ascii art:
----------------TRUNK ROAD------L---------------- -- local neighborhood streets -| |--- --- many small streets --- | \ -------L- OTHER TRUNK ROAD ----------------
The small streets should be class 0, TRUNKs class1, etc. highways class 6.
From the small streets you have links to L, how to get on the next road class /i'm not sure but highway herarchies sounds like this/
Right, the streets come different classes. I'm currently writing this class in three places: NOD 2: the first byte is class and speed and two unknown bits (once per road) Table A: one byte is class and speed and oneway and toll (once per arc) Arc: the destination class (this must be wrong) For the moment, we're not writing any links. I assume well-placed links would just optimize routing, but it seems to work without. Are links only ever between nodes on the same road, or can they go further? Say A--1--B--2--C where A and B are nodes in a residential area, 1 and 2 are different small streets, and C is on a trunk road. Can there be a link A->C?
"destination" class in an arc?)
That's for reading. If you are on node class 5 skip nodes with class < 5. The graph is searched bidirectional. Start from pos and dest and try to go to a bigger road class. At some point they meet each other. In other words when you get on the highway stay there, don't route along residental streets.
The class of a node is the maximum of the classes of the roads it lies on? And the destination class of an arc/link is the class of the destination node? That makes a lot of sense, but I remember seeing some maps where this didn't seem to be the case. Cheers Robert

Hi, On 12/4/08, Robert Vollmert <rvollmert-lists@gmx.net> wrote:
Hi Alex,
thanks for your help!
On Dec 4, 2008, at 13:44, Alexander Atanasov wrote:
On 12/4/08, svn commit <svn@mkgmap.org.uk> wrote:
what it does. The road class from RouteParams is set in various places, not really sure they should all get the same. (Why is it
They shouldn't be the same. Some ascii art:
----------------TRUNK ROAD------L---------------- -- local neighborhood streets -| |--- --- many small streets --- | \ -------L- OTHER TRUNK ROAD ----------------
The small streets should be class 0, TRUNKs class1, etc. highways class 6.
From the small streets you have links to L, how to get on the
next road class /i'm not sure but highway herarchies sounds like this/
Right, the streets come different classes. I'm currently writing this class in three places: NOD 2: the first byte is class and speed and two unknown bits (once per road) Table A: one byte is class and speed and oneway and toll (once per arc) Arc: the destination class (this must be wrong)
For the moment, we're not writing any links. I assume well-placed links would just optimize routing, but it seems to work without.
Links are helpful for fastest route, for shortest may be not. Does the routing work in both modes as expected?
Are links only ever between nodes on the same road, or can they go further? Say A--1--B--2--C where A and B are nodes in a residential area, 1 and 2 are different small streets, and C is on a trunk road. Can there be a link A->C?
Have to verify this but afaik they are on the same road. Pointers to the nodes that connect to higher road class. So if 1 and 2 are different roads, there is a link to B then to C.
"destination" class in an arc?)
That's for reading. If you are on node class 5 skip nodes with class < 5. The graph is searched bidirectional. Start from pos and dest and try to go to a bigger road class. At some point they meet each other. In other words when you get on the highway stay there, don't route along residental streets.
The class of a node is the maximum of the classes of the roads it lies on? And the destination class of an arc/link is the class of the destination node?
That makes a lot of sense, but I remember seeing some maps where this didn't seem to be the case.
There is a class of the road in net, i think the destination class should be derived from that class. You can reach a node via different arcs with different classes. Node's class itself makes sense only when starting to route from that node, iirc it was always 4 in the cgps compiled maps. -- have fun, alex

On Dec 4, 2008, at 16:31, Alexander Atanasov wrote:
Links are helpful for fastest route, for shortest may be not. Does the routing work in both modes as expected?
The "fastest" routes for cars look fine to me. The shortest routes are a little strange -- they make obvious detours. Also, the "Dist To Dest" is too low, I'm getting 15km instead of 17km for an example here. My guess would be that the arc lengths aren't all quite right. (We're not writing proper lengths in NET at all so far, but I don't think that should be involved in routing. More likely to do with addressing.) I'm also noticing that when viewing the route on the map (all my testing is on a Vista HCx), it doesn't follow curvy segments at low zoom levels, cutting them straight instead. If I zoom in, the display is corrected. So probably, there's some curviness data missing. Bicycle routing on the other hand doesn't look very promising. I'm not sure what's taken into account there. Note that there's a bug in osm2mp writing bad permissions, if any of you want to try this out. Cheers Robert

Hi, On 12/4/08, Robert Vollmert <rvollmert-lists@gmx.net> wrote:
On Dec 4, 2008, at 16:31, Alexander Atanasov wrote:
Links are helpful for fastest route, for shortest may be not. Does the routing work in both modes as expected?
The "fastest" routes for cars look fine to me. The shortest routes are a little strange -- they make obvious detours. Also, the "Dist To Dest" is too low, I'm getting 15km instead of 17km for an example here. My guess would be that the arc lengths aren't all quite right.
(We're not writing proper lengths in NET at all so far, but I don't think that should be involved in routing. More likely to do with addressing.)
Headings are angle of first and second point, and last-1 vs last. Lenght should be sum of distances of all points in the line. How are lenghts calculated?
I'm also noticing that when viewing the route on the map (all my testing is on a Vista HCx), it doesn't follow curvy segments at low zoom levels, cutting them straight instead. If I zoom in, the display is corrected. So probably, there's some curviness data missing.
Are the roads present at that map level? They should be even simplified as a signle point, that is polyline with point and one zero delta. And that segment is in net. -- have fun, alex

The shortest route does not even work with maps produced by Garmin themselves. The logarithm they are using is simply bad. It only works for very short distances (less than 4-5 intersections). Often shortest route is actually longer in distance than fastest route (tested for City Navigator and some routable topo maps.). Simply forget about shortest route, I don't think you are able to get it to work if Garmin is not. It seems to me that for Garmin shortest means something like, the shortest way alongside the vector between start and finish. Felix Alexander Atanasov wrote: Hi, On 12/4/08, Robert Vollmert <rvollmert-lists@gmx.net><mailto:rvollmert-lists@gmx.net> wrote:
On Dec 4, 2008, at 16:31, Alexander Atanasov wrote:
Links are helpful for fastest route, for shortest may be not. Does the routing work in both modes as expected?
The "fastest" routes for cars look fine to me. The shortest routes are a little strange -- they make obvious detours. Also, the "Dist To Dest" is too low, I'm getting 15km instead of 17km for an example here. My guess would be that the arc lengths aren't all quite right.
(We're not writing proper lengths in NET at all so far, but I don't think that should be involved in routing. More likely to do with addressing.)
Headings are angle of first and second point, and last-1 vs last. Lenght should be sum of distances of all points in the line. How are lenghts calculated?
I'm also noticing that when viewing the route on the map (all my testing is on a Vista HCx), it doesn't follow curvy segments at low zoom levels, cutting them straight instead. If I zoom in, the display is corrected. So probably, there's some curviness data missing.
Are the roads present at that map level? They should be even simplified as a signle point, that is polyline with point and one zero delta. And that segment is in net. -- have fun, alex _______________________________________________ mkgmap-dev mailing list mkgmap-dev@lists.mkgmap.org.uk<mailto:mkgmap-dev@lists.mkgmap.org.uk> http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev ________________________________ Diese Nachricht erhalten Sie von einem Studierenden der IMC Fachhochschule Krems. Für Übermittlungsfehler oder sonstige Irrtümer bei Übermittlung besteht keine Haftung seitens der IMC Fachhochschule Krems. This message is being transmitted by an IMC student. The sender does not accept liability for any errors or omissions as a result of the transmission.

On Dec 4, 2008, at 19:18, Alexander Atanasov wrote:
I'm also noticing that when viewing the route on the map (all my testing is on a Vista HCx), it doesn't follow curvy segments at low zoom levels, cutting them straight instead. If I zoom in, the display is corrected. So probably, there's some curviness data missing.
Are the roads present at that map level?
Yes, the roads are displayed with curves.
They should be even simplified as a signle point, that is polyline with point and one zero delta. And that segment is in net.
I'm afraid I don't understand this. In the proper maps, every road in NET links to a polyline in a low zoom level that's in fact just a point? Cheers Robert

Hi, Robert! On 12/6/08, Robert Vollmert <rvollmert-lists@gmx.net> wrote:
They should be even simplified as a signle point, that is polyline with point and one zero delta. And that segment is in net.
I'm afraid I don't understand this. In the proper maps, every road in NET links to a polyline in a low zoom level that's in fact just a point?
Okay, i'll try to explain. I know that some roads(polylines) are encoded like this, and i was wondering why? So when you draw the map you draw the objects but when you draw nodes you need to get from the segments to the polylines. To do so in NET you have segments per level, get the zoom level find the segments and draw them to display the route. If they are missing you don't know what to draw so short roads become points. big zoom long road long road ---------------------\ /---------------------------- \ s1 / \ ---------- s2 small zoom long road long road ----------------- ---------------------- so if s1 and s2 are missing you won't see the curve but just a stright line. But if you have s1 and s2 as polylines with one point it can be drawn. small zoom long road long road ----------------- ---------------------- P(s1) P(s2) -- have fun, alex
participants (4)
-
Alexander Atanasov
-
f.hartmann
-
Robert Vollmert
-
svn commit