[OSM-talk] Advanced relationships

Frederik Ramm frederik at remote.org
Wed Jun 13 23:21:51 BST 2007


Hi,

> My thinking : If you are allowed to make a U-turn immediately after
> the intersection, the autorouter may consider the possibility of
> crossing the intersection, immediately making a U-turn, then making a
> left (from the other side). This is only slightly longer than making
> the illegal right turn.

True. And it is actually a legal maneouvre by default in many countries 
(here in Germany, as far as I know, U-turns are allowed everwhere if 
they are not explicitly forbidden by signage or lines on the road 
surface - which is atypical since most of Germany operates by the "if it 
isn't explicitly allowed, it is probably forbidden" principle ;-).

Still, most autorouters do not consider U-turns part of normal route 
planning, even if they are legal.

> Let me just add that I hate dual carriageways, because it takes some
> effort take to map them properly and they are usually rendered poorly
> if they are too close together. Perhaps a solution would be to allow
> them to be modelled as a single way provided they are tagged with
> "uturn=no" or something.

Then every service area etc. would have to be flagged specially "only 
reachable from travel direction so-and-so"...

I think we should map each part of the dual carriageway, as we do now, 
perhaps even adding information about lanes some time, and combine them 
in some kind of meta object, superway, or whatever, to be rendered at 
low-detail zoom levels.

 > We can also introduce a tag for ways like
> "forward_may_turn_right_at_intersections=no" and
> "backward_may_turn_right_at_intersections=no". 

Too simple and too complicated at the same time. Firstly, the 
forward/backward stuff is difficult to grasp and will break when segment 
directions are switched; secondly, not every intersection has the 
options "left", "right", and "straight on".

And without proper API and editor support, these things are liable to 
break when people split or combine ways or maybe even insert nodes into 
an existing structure.

> We may also need a tag for nodes that state that sharp turns aren't
> allowed, e.g. where a slipway enters a busy street. 

In general, any kind of turn restriction is not a function of the node, 
but a function of the node and the "incoming" segment.

All your suggestions could be made to work somehow but they're just 
patches that make the whole thing more fragile and will introduce more 
problems and errors IMHO.

A solid relationship concept could avoid that.

Bye
Frederik

-- 
Frederik Ramm  ##  eMail frederik at remote.org  ##  N49°00.09' E008°23.33'




More information about the talk mailing list