Skip to content

Commit 1a6f1d8

Browse files
committed
fix(avoidance): fix margin param inconsistency (autowarefoundation#6765)
Signed-off-by: satoshi-ota <satoshi.ota928@gmail.com>
1 parent 098ebdd commit 1a6f1d8

File tree

1 file changed

+12
-3
lines changed
  • planning/behavior_path_avoidance_module/src

1 file changed

+12
-3
lines changed

planning/behavior_path_avoidance_module/src/scene.cpp

+12-3
Original file line numberDiff line numberDiff line change
@@ -641,7 +641,10 @@ void AvoidanceModule::fillDebugData(
641641
const auto constant_distance = helper_->getFrontConstantDistance(o_front);
642642
const auto & vehicle_width = planner_data_->parameters.vehicle_width;
643643

644-
const auto max_avoid_margin = object_parameter.lateral_hard_margin * o_front.distance_factor +
644+
const auto lateral_hard_margin = o_front.is_parked
645+
? object_parameter.lateral_hard_margin_for_parked_vehicle
646+
: object_parameter.lateral_hard_margin;
647+
const auto max_avoid_margin = lateral_hard_margin * o_front.distance_factor +
645648
object_parameter.lateral_soft_margin + 0.5 * vehicle_width;
646649

647650
const auto avoidance_distance = helper_->getSharpAvoidanceDistance(
@@ -1431,7 +1434,10 @@ double AvoidanceModule::calcDistanceToStopLine(const ObjectData & object) const
14311434
const auto object_type = utils::getHighestProbLabel(object.object.classification);
14321435
const auto object_parameter = parameters_->object_parameters.at(object_type);
14331436

1434-
const auto avoid_margin = object_parameter.lateral_hard_margin * object.distance_factor +
1437+
const auto lateral_hard_margin = object.is_parked
1438+
? object_parameter.lateral_hard_margin_for_parked_vehicle
1439+
: object_parameter.lateral_hard_margin;
1440+
const auto avoid_margin = lateral_hard_margin * object.distance_factor +
14351441
object_parameter.lateral_soft_margin + 0.5 * vehicle_width;
14361442
const auto avoidance_distance = helper_->getMinAvoidanceDistance(
14371443
helper_->getShiftLength(object, utils::avoidance::isOnRight(object), avoid_margin));
@@ -1675,7 +1681,10 @@ void AvoidanceModule::insertPrepareVelocity(ShiftedPath & shifted_path) const
16751681
const auto & vehicle_width = planner_data_->parameters.vehicle_width;
16761682
const auto object_type = utils::getHighestProbLabel(object.value().object.classification);
16771683
const auto object_parameter = parameters_->object_parameters.at(object_type);
1678-
const auto avoid_margin = object_parameter.lateral_hard_margin * object.value().distance_factor +
1684+
const auto lateral_hard_margin = object.value().is_parked
1685+
? object_parameter.lateral_hard_margin_for_parked_vehicle
1686+
: object_parameter.lateral_hard_margin;
1687+
const auto avoid_margin = lateral_hard_margin * object.value().distance_factor +
16791688
object_parameter.lateral_soft_margin + 0.5 * vehicle_width;
16801689
const auto shift_length = helper_->getShiftLength(
16811690
object.value(), utils::avoidance::isOnRight(object.value()), avoid_margin);

0 commit comments

Comments
 (0)