27 #ifndef G2O_EDGE_SE2_SEGMENT2D_LINE_H 28 #define G2O_EDGE_SE2_SEGMENT2D_LINE_H 30 #include "g2o/config.h" 59 Vector2D normal(dP.y(), -dP.x()); normal.normalize();
60 Vector2D prediction(atan2(normal.y(), normal.x()),
61 predP1.dot(normal)*.5 + predP2.dot(normal)*.5);
68 Eigen::Map<const Vector2D> data(d);
74 Eigen::Map<Vector2D> data(d);
88 Vector2D normal(dP.y(), -dP.x()); normal.normalize();
89 Vector2D prediction(atan2(normal.y(), normal.x()),
90 predP1.dot(normal)*.5 + predP2.dot(normal)*.5);
G2O_TYPES_SLAM2D_ADDONS_API double theta() const
virtual G2O_TYPES_SLAM2D_ADDONS_API bool getMeasurementData(double *d) const
Eigen::Matrix< double, 2, 1, Eigen::ColMajor > Vector2D
virtual G2O_TYPES_SLAM2D_ADDONS_API bool write(std::ostream &os) const
write the vertex to a stream
virtual G2O_TYPES_SLAM2D_ADDONS_API bool setMeasurementFromState()
virtual G2O_TYPES_SLAM2D_ADDONS_API bool setMeasurementData(const double *d)
G2O_TYPES_SLAM2D_ADDONS_API double rho() const
G2O_TYPES_SLAM2D_ADDONS_API void setTheta(double t)
2D pose Vertex, (x,y,theta)
G2O_TYPES_SLAM2D_ADDONS_API void computeError()
virtual G2O_TYPES_SLAM2D_ADDONS_API int measurementDimension() const
G2O_TYPES_SLAM2D_ADDONS_API EIGEN_MAKE_ALIGNED_OPERATOR_NEW G2O_TYPES_SLAM2D_ADDONS_API EdgeSE2Segment2DLine()
double normalize_theta(double theta)
#define G2O_TYPES_SLAM2D_ADDONS_API
Vector2D estimateP1() const
const EstimateType & estimate() const
return the current estimate of the vertex
Vector2D estimateP2() const
SE2 inverse() const
invert :-)
G2O_TYPES_SLAM2D_ADDONS_API void setRho(double r)
virtual G2O_TYPES_SLAM2D_ADDONS_API bool read(std::istream &is)
read the vertex from a stream, i.e., the internal state of the vertex
VertexContainer _vertices