43 #ifndef EDGE_VIA_POINT_H_ 44 #define EDGE_VIA_POINT_H_ 49 #include "g2o/core/base_unary_edge.h" 83 ROS_ASSERT_MSG(
cfg_ && _measurement,
"You must call setTebConfig(), setViaPoint() on EdgeViaPoint()");
86 _error[0] = (bandpt->
position() - *_measurement).norm();
88 ROS_ASSERT_MSG(std::isfinite(_error[0]),
"EdgeViaPoint::computeError() _error[0]=%f\n",_error[0]);
97 _measurement = via_point;
108 _measurement = via_point;
112 EIGEN_MAKE_ALIGNED_OPERATOR_NEW
Config class for the teb_local_planner and its components.
const TebConfig * cfg_
Store TebConfig class for parameters.
void computeError()
Actual cost function.
#define ROS_ASSERT_MSG(cond,...)
Eigen::Vector2d & position()
Access the 2D position part.
void setParameters(const TebConfig &cfg, const Eigen::Vector2d *via_point)
Set all parameters at once.
void setViaPoint(const Eigen::Vector2d *via_point)
Set pointer to associated via point for the underlying cost function.
This class stores and wraps a SE2 pose (position and orientation) into a vertex that can be optimized...
Edge defining the cost function for pushing a configuration towards a via point.
EdgeViaPoint()
Construct edge.
Base edge connecting a single vertex in the TEB optimization problem.