Opened 6 years ago

Last modified 6 years ago

#10982 new enhancement

Validate turn restrictions with to = from

Reported by: naoliv Owned by: team
Priority: normal Milestone:
Component: Core validator Version:
Keywords: Cc:


Could JOSM validate turn restrictions where to is the same way/node as from?

Attachments (1)

no-u-turn-examples.osm (11.9 KB) - added by naoliv 6 years ago.

Download all attachments as: .zip

Change History (6)

comment:1 Changed 6 years ago by mdk

what about restriction=no_u_turn?

comment:2 in reply to:  1 Changed 6 years ago by skyper

So far only roles are checked.

Think validator could check for incorrect turn restrictions like:

  1. except `restriction=no_u_turn´:
    • from and to need to be different ways
  2. for from and to ways, via node:
    • via needs to be end node of from and to
      • if from is tagged oneway=yes, via needs to be last node of from (except restriction:[mode] exists and from is tagged oneway:[mode]=no)
      • if to is tagged oneway=yes, via needs to be first node of to (except restriction:[mode] exists and to is tagged oneway:[mode]=no)
  3. for all members ways:
    • all ways need to be connected at end nodes
      • if a way is tagged oneway=yes, it needs to point from from to to (except restriction:[mode] exists and the way is tagged oneway:[mode]=no)

And we could even check for the right access tags on all ways.

comment:3 Changed 6 years ago by mdk

And keep in mind, that via also could be a way.

comment:4 Changed 6 years ago by naoliv

What I see that is wrong (ie, JOSM should give a warning):

1) we have a no_u_turn in a street that ends somewhere (without any kind of key/value in the last node); if it's forbidden to make an U-turn then it makes the street a dead-end (the vehicle can enter the street but will never be able to get back)
2) likewise, but with a highway=turning_circle
3) likewise, but with a noexit=yes
4) we have a no_u_turn in the middle of the street, forbidding a U-turn at the junction/crossing; this should be considered forbidden by default (making this no_u_turn unnecessary), otherwise we will have one no_u_turn restriction for every highway crossing in the map.
5) having a no_u_turn in highway=footway makes no sense (a person walking on it can't go back?)
6) likewise, but with highway=path
7) to, via and from are all the same section of highway; it's just wrong and JOSM should warn.

What could be valid (and JOSM should not warn):

8) a no_u_turn using a highway=mini_roundabout as via
9) a no_u_turn using one or more ways/nodes as via

The example OSM file is attached.

Changed 6 years ago by naoliv

Attachment: no-u-turn-examples.osm added

comment:5 Changed 6 years ago by naoliv

A no_u_turn using a via node with traffic_calming=island could also be valid (and should not trigger a warning).

Modify Ticket

Change Properties
Set your email in Preferences
as new The owner will remain team.
as The resolution will be set.
to The owner will be changed from team to the specified user.
The owner will change to naoliv
as duplicate The resolution will be set to duplicate.The specified ticket will be cross-referenced with this ticket
The owner will be changed from team to anonymous.

Add Comment

E-mail address and name can be saved in the Preferences.

Note: See TracTickets for help on using tickets.