26 std::array<double, 4>
coefs{{.0, .0, .0, .0}};
82 constexpr
TPlane(
double A,
double B,
double C,
double D) :
coefs{
A, B, C, D}
90 for (
size_t i = 0; i < 4; i++)
coefs[i] = vec[i];
bool contains(const TSegment3D &segment) const
Check whether a segment is fully contained into the plane.
TVector3D getUnitaryNormalVector() const
Get normal vector.
mrpt::serialization::CArchive & operator>>(mrpt::serialization::CArchive &in, CMatrixD::Ptr &pObj)
TPoint3D point1
origin point
void getAsPose3D(mrpt::math::TPose3D &outPose) const
This base provides a set of functions for maths stuff.
TPlane(const double(&vec)[4])
Constructor from an array of coefficients.
double evaluatePoint(const TPoint3D &point) const
Evaluate a point in the plane's equation.
3D segment, consisting of two points.
TPoint3D point2
final point
void getAsPose3DForcingOrigin(const TPoint3D ¢er, TPose3D &pose) const
3D Plane, represented by its equation
constexpr TPlane(double A, double B, double C, double D)
Constructor from plane coefficients.
void unitarize()
Unitarize normal vector.
#define MRPT_DECLARE_TTYPENAME_NO_NAMESPACE(_TYPE, __NS)
Declares a typename to be "type" (without the NS prefix)
double distance(const TPoint3D &point) const
Distance to 3D point.
Virtual base class for "archives": classes abstracting I/O streams.
mrpt::vision::TStereoCalibResults out
mrpt::serialization::CArchive & operator<<(mrpt::serialization::CArchive &s, const CVectorFloat &a)
Lightweight 3D pose (three spatial coordinates, plus three angular coordinates).
bool contains(const TPoint3D &point) const
Check whether a point is contained into the plane.
TPlane()=default
Fast default constructor.
std::array< double, 4 > coefs
Plane coefficients, stored as an array: .
TVector3D getNormalVector() const
Get plane's normal vector.
3D line, represented by a base point and a director vector.