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 lane assist oddity #3052
Comments
|
Turn lanes test added |
I think I get it. I do see cases where other tagged properties may change in the space of the length of a turn:lanes declaration, such as route relations, road surface, speed limits, etc. This is only of course because turn:lanes (as on the wiki) indicates that turn lanes should be declared for their entire length, and not the last segment for which they have relevance. http://wiki.openstreetmap.org/wiki/Key:turn#Turning_indications_per_lane "It is used on the way segment from the first indication via road markings, signposts or similar indications to the junction or completion of merge. " |
|
@skylerbunny I was wrong. Osmand should handle these situations correctly. |
|
@xmd5a2 |
|
It turned out in the end that's it is still a map issue. So the program assigns 2 lanes to go forward and 2 lanes to turn right to https://www.openstreetmap.org/way/295752198 from https://www.openstreetmap.org/way/265002602. Which i guess obviously a mistake cause you can't turn right there. So adding restriction no turn right from 265002602 to 295752198, will fix the test and the issue. @xmd5a2 please correct the test. |
|
I understand that this is a map error now and not a problem with how Osmand is calculating lane assistance. That being said, since it is probably not easily obvious to the average editor that 'the reason a turn:lanes instruction doesn't work properly is because of the lack of a restrictions relation', I've added a caution box to its wiki page so this is less likely to come up in the future. 'At intersections where turn=* and turn:lanes=* keys are used, legal turning restrictions are expected to be correctly specified to allow navigation programs to calculate driver lane assistance properly. These turning restrictions are explained in the restriction relation article.' |
|
Added no right turn restriction as requested. https://www.openstreetmap.org/relation/6596913 |
|
@vshcherb Adding restriction no turn right from 265002602 to 295752198 does not fixes issue <segment id="265002600" oid="16960166461" start="1" end="2" time = "1.2481261" rtime = "1.4242814" name = "South Kent Des Moines Road (WA 516) " distance = "22.027115" turn = "Go ahead" turn_angle = "0.0" start_bearing = "-19.983107" end_bearing = "-37.635254" description = "Go ahead and go 22,03 meters" />
<segment id="265002602" oid="16960166583" start="0" end="2" time = "19.540812" rtime = "0.0" name = "South Kent Des Moines Road" distance = "80.13692" turn = "Go ahead(+TL|+TL|C|C|TSLR)" turn_angle = "-1.4178848" lanes = "[5, 5, 2, 2, 12]" start_bearing = "-39.05314" end_bearing = "-38.97247" description = "-*Go ahead(+TL|+TL|C|C|TSLR) and go 80,14 meters" />
<point crossing="traffic_signals" highway="crossing"/>
<segment id="362433819" oid="23195764433" start="0" end="1" time = "31.380737" rtime = "1.5739987" name = "South Kent Des Moines Road" distance = "24.36745" turn = "Turn left(+TL|+TL|C|C)" turn_angle = "-0.07342148" lanes = "[5, 5, 2, 2]" start_bearing = "-39.04589" end_bearing = "-39.04589" description = "Turn left(+TL|+TL|C|C) and go 24,37 meters" />
<point highway="traffic_signals"/>
<segment id="295752196" oid="18928140581" start="0" end="2" time = "48.67099" rtime = "3.6973188" name = "South Kent Des Moines Road" maxspeed = "55.999996" primary distance = "56.83236" turn = "Go ahead(TL|TL|+C|+C)" turn_angle = "0.14175415" lanes = "[4, 4, 3, 3]" start_bearing = "-38.904137" end_bearing = "-41.68222" description = "-*Go ahead(TL|TL|+C|+C) and go 56,83 meters" /> |
|
That's true, I didn't run full test (just deleted that road from the graph), though please keep that test updated. Now it is OsmAnd issue which we need to fix. |
Consider the following, routing from (47.3978387, -122.2920164) to (47.3958035, -122.2985595).
The calculated route will take you off of the freeway to the first exit, and then make a right turn onto Kent Des Moines Road. Here's the problem. When lane assist is on, when going through the intersection at Pacific Highway South, the lane calculation assumes that you are making a left turn, and voice instructions confirm that. So despite the fact that the navigation clearly shows going straight through the intersection, the voice instruction is to 'Turn left onto Kent Des Moines Road' (the road you are to continue straight onto).
As best I can tell, the lanes specifications and turn:lanes are reasonable, so I think this may be an Osmand bug, so logging it here. If something's wrong with the tagging, I'm not sure what it is.
The text was updated successfully, but these errors were encountered: