From f945c019d4fbd00be2cec7a2f914e06efa9e8251 Mon Sep 17 00:00:00 2001 From: Satoshi OTA <44889564+satoshi-ota@users.noreply.github.com> Date: Wed, 10 May 2023 09:00:40 +0900 Subject: [PATCH] feat(avoidance): consider previous module's turn signal (#3636) Signed-off-by: satoshi-ota --- .../src/scene_module/avoidance/avoidance_module.cpp | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/planning/behavior_path_planner/src/scene_module/avoidance/avoidance_module.cpp b/planning/behavior_path_planner/src/scene_module/avoidance/avoidance_module.cpp index 91f6a57619acf..aa64e2741e52d 100644 --- a/planning/behavior_path_planner/src/scene_module/avoidance/avoidance_module.cpp +++ b/planning/behavior_path_planner/src/scene_module/avoidance/avoidance_module.cpp @@ -2790,7 +2790,18 @@ BehaviorModuleOutput AvoidanceModule::plan() } BehaviorModuleOutput output; - output.turn_signal_info = calcTurnSignalInfo(avoidance_path); + + // turn signal info + { + const auto original_signal = getPreviousModuleOutput().turn_signal_info; + const auto new_signal = calcTurnSignalInfo(avoidance_path); + const auto current_seg_idx = planner_data_->findEgoSegmentIndex(avoidance_path.path.points); + output.turn_signal_info = planner_data_->turn_signal_decider.use_prior_turn_signal( + avoidance_path.path, getEgoPose(), current_seg_idx, original_signal, new_signal, + planner_data_->parameters.ego_nearest_dist_threshold, + planner_data_->parameters.ego_nearest_yaw_threshold); + } + // sparse resampling for computational cost { avoidance_path.path =