16 #include <Eigen/Dense>    34     Eigen::Vector3d u, v, w;
    46     double D = a * c - b * b;  
    47     double sc, sN, sD = D;  
    48     double tc, tN, tD = D;  
    96         else if ((-d + b) > a)
   105     sc = (fabs(sN) < 0.00000001 ? 0.0 : sN / sD);
   106     tc = (fabs(tN) < 0.00000001 ? 0.0 : tN / tD);
   109     const auto dP = (w + (sc * u) - (tc * v)).eval();
 bool contains(const TPoint3D &point) const
Check whether a point is inside the segment. 
 
void asVector(VECTORLIKE &v) const
Transformation into vector. 
 
mrpt::serialization::CArchive & operator>>(mrpt::serialization::CArchive &in, CMatrixD::Ptr &pObj)
 
TPoint3D point1
origin point 
 
This base provides a set of functions for maths stuff. 
 
2D segment, consisting of two points. 
 
3D segment, consisting of two points. 
 
TPoint3D point2
final point 
 
double length() const
Segment length. 
 
bool operator<(const TSegment3D &s) const
 
double distance(const TPoint3D &point) const
Distance to point. 
 
Virtual base class for "archives": classes abstracting I/O streams. 
 
double getEpsilon()
Gets the value of the geometric epsilon (default = 1e-5) 
 
mrpt::vision::TStereoCalibResults out
 
mrpt::serialization::CArchive & operator<<(mrpt::serialization::CArchive &s, const CVectorFloat &a)
 
double distance(const TPoint3D &point) const
Distance between the line and a point. 
 
void generate2DObject(TSegment2D &s) const
Projection into 2D space, discarding the z. 
 
double distance(const TPoint2D &p1, const TPoint2D &p2)
Gets the distance between two points in a 2D space. 
 
3D line, represented by a base point and a director vector.