osrm-backend/include/extractor/guidance
Daniel J. Hofmann 86fd04e556 Improves lane handling for subsequent going straight, resolves #2625
Before we only worked on subsequent quick turns, as in:
`right, right` keeps the user on the rightmost lanes.

This changeset modifies the logic to work on any subsequent steps
that are "quick" and have lane information we can constrain later.

Because we do not have a from-lane => to-lanes mapping we take the
lanes left and right of the turn lanes into account when heuristically
assigning the leftmost / rightmost lanes.

There are some edge cases where this still does not give us the optimal
solution but it gets close to what is actually possible at the moment
without having a lane mapping in post-processing.

References:
- https://github.com/Project-OSRM/osrm-backend/issues/2625

fix rebase
2016-09-07 12:17:36 +02:00
..
constants.hpp handle non-through case 2016-08-24 10:12:27 +02:00
discrete_angle.hpp Use stdint and using type-alias for discrete angle 2016-04-05 22:58:32 +02:00
intersection_generator.hpp improve segregated road detection 2016-08-24 10:34:07 +02:00
intersection_handler.hpp improve segregated road detection 2016-08-24 10:34:07 +02:00
intersection_scenario_three_way.hpp improve sliproad / fork handling 2016-07-22 15:16:59 +02:00
intersection.hpp Implement Turn Lane Api 2016-06-27 10:07:48 +02:00
motorway_handler.hpp handle missing cases, cleaning up 2016-08-24 10:34:07 +02:00
road_classification.hpp handle non-through case 2016-08-24 10:12:27 +02:00
roundabout_handler.hpp handle missing cases, cleaning up 2016-08-24 10:34:07 +02:00
roundabout_type.hpp Format with clang-format 3.8 2016-05-27 21:05:04 +02:00
sliproad_handler.hpp handle missing cases, cleaning up 2016-08-24 10:34:07 +02:00
toolkit.hpp Improves lane handling for subsequent going straight, resolves #2625 2016-09-07 12:17:36 +02:00
turn_analysis.hpp Initial left hand driving implementation 2016-07-28 22:59:22 +02:00
turn_classification.hpp Format with clang-format 3.8 2016-05-27 21:05:04 +02:00
turn_discovery.hpp basic turn lane handling 2016-06-27 10:07:41 +02:00
turn_handler.hpp handle missing cases, cleaning up 2016-08-24 10:34:07 +02:00
turn_instruction.hpp Static checks for guidance array sizes. 2016-08-12 18:52:54 +03:00
turn_lane_augmentation.hpp Warn on unused return values in guidance code, resolves #2686. 2016-08-03 12:26:07 +02:00
turn_lane_data.hpp don't assign lanes on delayed turns 2016-09-07 12:17:34 +02:00
turn_lane_handler.hpp don't assign lanes on delayed turns 2016-09-07 12:17:34 +02:00
turn_lane_matcher.hpp turn lane handler moved to scenario based handling 2016-09-07 12:16:59 +02:00
turn_lane_types.hpp turn lane handler moved to scenario based handling 2016-09-07 12:16:59 +02:00