diff --git a/CHANGELOG.md b/CHANGELOG.md index 8b0587fe2..3151d3317 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,8 @@ - Profiles - `restrictions` is now used for namespaced restrictions and restriction exceptions (e.g. `restriction:motorcar=` as well as `except=motorcar`) - replaced lhs/rhs profiles by using test defined profiles + - Guidance + - Notifications are now exposed more prominently, announcing turns onto a ferry/pushing your bike more prominently - Trip Plugin - changed internal behaviour to prefer the smallest lexicographic result over the largest one diff --git a/features/guidance/collapse.feature b/features/guidance/collapse.feature index f8e666627..ea318cf39 100644 --- a/features/guidance/collapse.feature +++ b/features/guidance/collapse.feature @@ -836,5 +836,5 @@ Feature: Collapse | ej | primary | | off | yes | When I route I should get - | waypoints | route | turns | - | k,j | on,ferry,,ferry,off,off | depart,new name straight,continue uturn,turn straight,new name straight,arrive | + | waypoints | route | turns | + | k,j | on,ferry,,ferry,off,off | depart,notification straight,continue uturn,turn straight,notification straight,arrive | diff --git a/src/extractor/guidance/intersection_handler.cpp b/src/extractor/guidance/intersection_handler.cpp index 4e9c0b63e..38a491548 100644 --- a/src/extractor/guidance/intersection_handler.cpp +++ b/src/extractor/guidance/intersection_handler.cpp @@ -110,7 +110,11 @@ TurnInstruction IntersectionHandler::getInstructionForObvious(const std::size_t else if (in_data.road_classification.IsRampClass() && out_data.road_classification.IsRampClass()) { - return {in_mode == out_mode ? TurnType::Suppressed : TurnType::Notification, getTurnDirection(road.turn.angle)}; + // This check is more a precaution than anything else. Our current travel modes + // cannot reach this, since all ramps are exposing the same travel type. But we + // could see toll-type at some point. + return {in_mode == out_mode ? TurnType::Suppressed : TurnType::Notification, + getTurnDirection(road.turn.angle)}; } else { @@ -137,13 +141,15 @@ TurnInstruction IntersectionHandler::getInstructionForObvious(const std::size_t } else { - return {in_mode == out_mode ? TurnType::NewName : TurnType::Notification, getTurnDirection(road.turn.angle)}; + return {in_mode == out_mode ? TurnType::NewName : TurnType::Notification, + getTurnDirection(road.turn.angle)}; } } // name has not changed, suppress a turn here or indicate mode change else { - return {in_mode == out_mode ? TurnType::Suppressed : TurnType::Notification, getTurnDirection(road.turn.angle)}; + return {in_mode == out_mode ? TurnType::Suppressed : TurnType::Notification, + getTurnDirection(road.turn.angle)}; } } BOOST_ASSERT(type == TurnType::Continue);