-
Notifications
You must be signed in to change notification settings - Fork 3.8k
Description
Compared to ordinary four-way and T-intersections, forks are rarely tagged with turn lanes in OpenStreetMap. Fortunately, it’s possible in many cases for OSRM to come up with the lane indications at a Y-intersection based on the number of lanes on the three ways involved. OSRM should include these synthesized lane indications on a fork intersection that otherwise has no lane indications. This would allow a client to display lane guidance at forks, where lane guidance is especially important for avoiding rerouting.
The simplest case is when the two branches’ lane counts add up to the origin way’s lane count. In that case, the left branch’s lane count is the number of slight left turn lanes, and the right branch’s lane count is the number of slight right turn lanes:
Another common case is when the two branches’ lane counts add up to one less than the origin way’s lane count. In that case, an “option lane” forks into two lanes, each going to a different branch. The option lane would have a lane indication of [slight left, slight right].
Normally, the two branches would share no more than one lane, under the principle that a lane shouldn’t cross the lane beside it.
| // turning right through a possible through lane is not possible |
More complex forks would require respecting transit relations (#4284)connectivity relations. For example, if there are more than two branches or there’s a lane drop right at the fork, lane counts can become unreliable across the intersection.

