Opened 3 years ago

#1215 new defect/bug

Wrong turn restriction processing when multiple single-way paths exist

Reported by: tryagain Owned by: KaZeR
Priority: major Milestone: version 0.5.1
Component: core Version: git master
Severity: normal Keywords: routing, maptool
Cc:

Description

There's a flaw in turn restriction processing code which does not allow direct natural routing from https://www.openstreetmap.org/node/1366417317 (P) to https://www.openstreetmap.org/node/1141785377 (D) through https://www.openstreetmap.org/way/106684752 (AB).

Suppose we have current position point P, destination point D and two intermediate points A and B.

There are following ways defined: PA, AB, BD which describe a direct way from P to D.

Suppose we have a service way from A to B flowing through some side point(s) C, and it's not allowed to turn left to the ACB way ( https://www.openstreetmap.org/way/106684747 ) when you drive on PA.

Maptool records only three points of a turn restriction: beginning of the "from" way, "via" node, and end point of the "to" way. So, in described situation, it will produce a rule prohibiting access from A to B by any existing way.

If ACB is represented by multiple OSM ways, problem will not appear.

IIRC, maptool splits all ways at each crossing before applying above logic. So this problem will probably also have no sense if ACB has some other ways connecting to ACB point C.

Attachments (1)

tr_bug.png (47.7 KB) - added by tryagain 3 years ago.

Download all attachments as: .zip

Change History (1)

Changed 3 years ago by tryagain

Note: See TracTickets for help on using tickets.