@@ -47,24 +47,23 @@ HomotopyClassPlanner::HomotopyClassPlanner() : cfg_(NULL), obstacles_(NULL), via
47
47
{
48
48
}
49
49
50
- HomotopyClassPlanner::HomotopyClassPlanner (nav2_util::LifecycleNode::SharedPtr node, const TebConfig& cfg, ObstContainer* obstacles, RobotFootprintModelPtr robot_model,
50
+ HomotopyClassPlanner::HomotopyClassPlanner (nav2_util::LifecycleNode::SharedPtr node, const TebConfig& cfg, ObstContainer* obstacles,
51
51
TebVisualizationPtr visual, const ViaPointContainer* via_points) : initial_plan_(NULL )
52
52
{
53
- initialize (node, cfg, obstacles, robot_model, visual, via_points);
53
+ initialize (node, cfg, obstacles, visual, via_points);
54
54
}
55
55
56
56
HomotopyClassPlanner::~HomotopyClassPlanner ()
57
57
{
58
58
}
59
59
60
- void HomotopyClassPlanner::initialize (nav2_util::LifecycleNode::SharedPtr node, const TebConfig& cfg, ObstContainer* obstacles, RobotFootprintModelPtr robot_model,
60
+ void HomotopyClassPlanner::initialize (nav2_util::LifecycleNode::SharedPtr node, const TebConfig& cfg, ObstContainer* obstacles,
61
61
TebVisualizationPtr visual, const ViaPointContainer* via_points)
62
62
{
63
63
node_ = node;
64
64
cfg_ = &cfg;
65
65
obstacles_ = obstacles;
66
66
via_points_ = via_points;
67
- robot_model_ = robot_model;
68
67
69
68
if (cfg_->hcp .simple_exploration )
70
69
graph_search_ = std::shared_ptr<GraphSearchInterface>(new lrKeyPointGraph (*cfg_, this ));
@@ -82,11 +81,6 @@ void HomotopyClassPlanner::initialize(nav2_util::LifecycleNode::SharedPtr node,
82
81
setVisualization (visual);
83
82
}
84
83
85
- void HomotopyClassPlanner::updateRobotModel (RobotFootprintModelPtr robot_model )
86
- {
87
- robot_model_ = robot_model;
88
- }
89
-
90
84
void HomotopyClassPlanner::setVisualization (const TebVisualizationPtr& visualization)
91
85
{
92
86
visualization_ = visualization;
@@ -171,7 +165,7 @@ void HomotopyClassPlanner::visualize()
171
165
visualization_->publishLocalPlanAndPoses (best_teb->teb ());
172
166
173
167
if (best_teb->teb ().sizePoses () > 0 ) // TODO maybe store current pose (start) within plan method as class field.
174
- visualization_->publishRobotFootprintModel (best_teb->teb ().Pose (0 ), *robot_model_ );
168
+ visualization_->publishRobotFootprintModel (best_teb->teb ().Pose (0 ), *cfg_-> robot_model );
175
169
176
170
// feedback message
177
171
if (cfg_->trajectory .publish_feedback )
@@ -372,7 +366,7 @@ TebOptimalPlannerPtr HomotopyClassPlanner::addAndInitNewTeb(const PoseSE2& start
372
366
{
373
367
if (tebs_.size () >= cfg_->hcp .max_number_classes )
374
368
return TebOptimalPlannerPtr ();
375
- TebOptimalPlannerPtr candidate = TebOptimalPlannerPtr ( new TebOptimalPlanner (node_, *cfg_, obstacles_, robot_model_, visualization_));
369
+ TebOptimalPlannerPtr candidate = TebOptimalPlannerPtr ( new TebOptimalPlanner (node_, *cfg_, obstacles_, visualization_));
376
370
377
371
candidate->teb ().initTrajectoryToGoal (start, goal, 0 , cfg_->robot .max_vel_x , cfg_->trajectory .min_samples , cfg_->trajectory .allow_init_with_backwards_motion );
378
372
@@ -427,7 +421,7 @@ TebOptimalPlannerPtr HomotopyClassPlanner::addAndInitNewTeb(const std::vector<ge
427
421
{
428
422
if (tebs_.size () >= cfg_->hcp .max_number_classes )
429
423
return TebOptimalPlannerPtr ();
430
- TebOptimalPlannerPtr candidate = TebOptimalPlannerPtr ( new TebOptimalPlanner (node_, *cfg_, obstacles_, robot_model_, visualization_));
424
+ TebOptimalPlannerPtr candidate = TebOptimalPlannerPtr ( new TebOptimalPlanner (node_, *cfg_, obstacles_, visualization_));
431
425
432
426
candidate->teb ().initTrajectoryToGoal (initial_plan, cfg_->robot .max_vel_x , cfg_->robot .max_vel_theta ,
433
427
cfg_->trajectory .global_plan_overwrite_orientation , cfg_->trajectory .min_samples , cfg_->trajectory .allow_init_with_backwards_motion );
0 commit comments