Go to the documentation of this file.
122 template <
class DERIVEDCLASS, std::
size_t DIM>
126 mrpt::poses::detail::T3DTypeHelper<DERIVEDCLASS>::is_3D_val>
131 return *
static_cast<const DERIVEDCLASS*
>(
this);
133 DERIVEDCLASS&
derived() {
return *
static_cast<DERIVEDCLASS*
>(
this); }
143 inline double x() const
147 inline double y() const
161 inline void x(
const double v)
165 inline void y(
const double v)
182 return DERIVEDCLASS::is_3D_val != 0;
186 template <
class OTHERCLASS, std::
size_t DIM2>
197 static_cast<const OTHERCLASS*
>(&b)->m_coords[2]);
200 square(
static_cast<const OTHERCLASS*
>(&b)->m_coords[2]);
206 square(
static_cast<const OTHERCLASS*
>(&b)->m_coords[2]);
213 template <
class OTHERCLASS, std::
size_t DIM2>
277 template <
class MATRIX44>
281 derived().getHomogeneousMatrix(m);
289 template <
class MATRIX44>
292 derived().getHomogeneousMatrix(out_HM);
297 template <
class MATRIX44>
MATRIX44 getHomogeneousMatrixVal() const
Returns the corresponding 4x4 homogeneous transformation matrix for the point(translation) or pose (t...
void x_incr(const double v)
double x() const
Common members of all points & poses classes.
double distance2DToSquare(double ax, double ay) const
Returns the squared 2D distance from this pose/point to a 2D point (ignores Z, if it exists).
void homogeneousMatrixInverse(const MATRIXLIKE1 &M, MATRIXLIKE2 &out_inverse_M)
Efficiently compute the inverse of a 4x4 homogeneous matrix by only transposing the rotation 3x3 part...
void y_incr(const double v)
double norm() const
Returns the euclidean norm of vector: .
This is the global namespace for all Mobile Robot Programming Toolkit (MRPT) libraries.
double distanceTo(const CPoseOrPoint< OTHERCLASS, DIM2 > &b) const
Returns the Euclidean distance to another pose/point:
The base template class for 2D & 3D points and poses.
A compile-time fixed-size numeric matrix container.
double distance2DTo(double ax, double ay) const
Returns the 2D distance from this pose/point to a 2D point (ignores Z, if it exists).
void getInverseHomogeneousMatrix(MATRIX44 &out_HM) const
Returns the corresponding 4x4 inverse homogeneous transformation matrix for this point or pose.
vector_t asVectorVal() const
Return the pose or point as a 1xN vector with all the components (see derived classes for each implem...
double sqrDistanceTo(const CPoseOrPoint< OTHERCLASS, DIM2 > &b) const
Returns the squared euclidean distance to another pose/point:
return_t square(const num_t x)
Inline function for the square of a number.
virtual void setToNaN()=0
Set all data fields to quiet NaN.
static bool is3DPoseOrPoint()
Return true for poses or points with a Z component, false otherwise.
double distance3DToSquare(double ax, double ay, double az) const
Returns the squared 3D distance from this pose/point to a 3D point.
const DERIVEDCLASS & derived() const
MATRIX44 getInverseHomogeneousMatrixVal() const
This is an overloaded member function, provided for convenience. It differs from the above function o...
double distanceTo(const mrpt::math::TPoint3D &b) const
Returns the euclidean distance to a 3D point:
double distance3DTo(double ax, double ay, double az) const
Returns the 3D distance from this pose/point to a 3D point.
Page generated by Doxygen 1.8.17 for MRPT 2.0.3 at Fri May 15 23:51:15 UTC 2020 | |