Hi, Nic Roets wrote: > > I may not understand you correctly.
I perhaps didn't explain well. I've made a very rough model of the Boulogne junction that I mentioned in my previous mail. http://discord.ensued.net/boulogne.png The user is on the orange way and will be routed to the yellow way. Depending on the class (or lack) of vehicle in question, the route will either be orange, blue, yellow or orange, gray, magenta, yellow. The only points in this map that are relevant for a routing system (to this fraction of the route) are A, B, C and D. The system has a precalculated table that says A->B = 70m B->C = 88m C->D = 190m A->D = 188m And it doesn't store any information at all about the nodes between A and D, between A and B, B and C or between C and D, as it doesn't need to know that information in order to produce a route. (The nodes may be present at another level to aid it in its map display, but they won't be considered at the routing stage.) Since considering the intervening nodes may be an inconvenience to implementers, I was thinking that anything we come up with should restrict itself to (in this example) referencing nodes A, B, C and D. But if you restrict yourself in that way, it's difficult to differentiate the two possible routes. For the longer route, you can do from=orange, to=yellow, via=B or from=orange, to=yellow, via=C ...but the other route has to be... from=orange, to=yellow, via=A or from=orange, to=yellow, via=D ...neither of which uniquely identifies the route, since the longer route also goes via A and D. But you should in all cases be able to uniquely identify a route when specifying ways. So: from=orange, to=yellow, via=blue from=orange, to=yellow, via=gray (or magenta) > My understanding is that the 'via' node will always occur in both the > 'from' way and the 'to' way. Hm, that doesn't fit with my understanding. > The difficult case is http://www.rational.co.za/routeRelation.png > All 3 ways are bidirectional. If the computer wants to route you from > the gray way to make a left turn (with or without reaching the green > way) it needs to be able to reliably detect which relations to use. Right - tricky case. I don't think "via" helps that case, no matter whether "via" is a node or a way? Taking on your suggestion of specifying left and right: possibly as a new "direction" tag in the suggestion from my previous mail? <relation> <member type="way" role="from" ref="...gray..." /> <member type="way" role="to" ref="...orange..." /> <tag k="type" v="route_info" /> <tag k="direction" v="left" /> <tag k="text:en_ZA" v="...specific directions..." /> </relation> <relation> <member type="way" role="from" ref="...gray..." /> <member type="way" role="to" ref="...orange..." /> <tag k="type" v="route_info" /> <tag k="direction" v="right" /> <tag k="text:en_ZA" v="...specific directions..." /> </relation> -- Jon Bright Silicon Circus Ltd. http://www.siliconcircus.com _______________________________________________ Routing mailing list [email protected] http://lists.openstreetmap.org/cgi-bin/mailman/listinfo/routing
