Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Turn restriction display/editing fails when two roads meet at both ends #1108

Open
andrewphilipsmith opened this issue Sep 5, 2023 · 1 comment
Labels

Comments

@andrewphilipsmith
Copy link
Collaborator

andrewphilipsmith commented Sep 5, 2023

(This will be true if #1091 is merged.)

How to reproduce

  1. Locate a small crescent road which meets the same main road at each end, and there are no other intermediate intersections.
  2. Open this location in the LTN tool
  3. Attempt to add/edit turn restrictions at both ends of the road.

Expected results

The icons for the new/edited turn restrictions should show at the end of the road where it was edited.

Actual results

The icons for the new/edited turn restrictions will always show at the same end of the road, irrespective of which end of the road was clicked on during editing.

abstreet-bug-1108.mp4

See video:

  • The first edit (western end of Queens Court) the turn restriction sign appears where expected
  • The second edit (the eastern end of Queens Court) the turn restriction still appears at the western end, despite the edit occurring at the eastern end.
@andrewphilipsmith
Copy link
Collaborator Author

Notes:

  • The immediate cause is the arbitrary choice made here

    // This is probably rare, just pick one side arbitrarily

  • The wider problem is that this is likely to be a limitation of the road.turn_restictions structure. This doesn't store information about which intersection the turn relates to. Presumably on the assumption that the intersection is unambiguous - which it is in the large majority of cases. See discussion here Enable editing of turn restrictions in the LTN tool #1091 (comment)

  • Not tested yet but suspected => importing this scenario from OSM data would result in the same problem. It might be appropriate/helpful to build a test case around this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants