9 #ifndef CPose3DQuatPDF_H 10 #define CPose3DQuatPDF_H 71 const CPose3D& newReferenceBase) = 0;
95 template <
class OPENGL_SETOFOBJECTSPTR>
98 using SETOFOBJECTS =
typename OPENGL_SETOFOBJECTSPTR::value_type;
106 template <
class OPENGL_SETOFOBJECTSPTR>
109 using SETOFOBJECTS =
typename OPENGL_SETOFOBJECTSPTR::value_type;
void getAs3DObject(OPENGL_SETOFOBJECTSPTR &out_obj) const
Returns a 3D representation of this PDF (it doesn't clear the current contents of out_obj...
virtual void copyFrom(const CPose3DQuatPDF &o)=0
Copy operator, translating if necesary (for example, between particles and gaussian representations) ...
#define DEFINE_VIRTUAL_SERIALIZABLE(class_name)
This declaration must be inserted in virtual CSerializable classes definition:
A numeric matrix of compile-time fixed size.
virtual void changeCoordinatesReference(const CPose3D &newReferenceBase)=0
A class used to store a 3D pose as a translation (x,y,z) and a quaternion (qr,qx,qy,qz).
Declares a class that represents a probability density function (pdf) of a 2D pose (x...
Classes for 2D/3D geometry representation, both of single values and probability density distribution...
OPENGL_SETOFOBJECTSPTR getAs3DObject() const
Returns a 3D representation of this PDF.
CSetOfObjects::Ptr posePDF2opengl(const POSE_PDF &o)
Returns a representation of a the PDF - this is just an auxiliary function, it's more natural to call...
Declares a class that represents a Probability Density Function (PDF) of a 3D pose (6D actually)...
A class used to store a 3D pose (a 3D translation + a rotation in 3D).
The virtual base class which provides a unified interface for all persistent objects in MRPT...
static void jacobiansPoseComposition(const CPose3DQuat &x, const CPose3DQuat &u, mrpt::math::CMatrixDouble77 &df_dx, mrpt::math::CMatrixDouble77 &df_du, CPose3DQuat *out_x_oplus_u=nullptr)
This static method computes the two Jacobians of a pose composition operation $f(x,u)= x u$.
virtual void inverse(CPose3DQuatPDF &o) const =0
Returns a new PDF such as: NEW_PDF = (0,0,0) - THIS_PDF.
A generic template for probability density distributions (PDFs).
static CPose3DQuatPDF * createFrom2D(const CPosePDF &o)
This is a static transformation method from 2D poses to 3D PDFs, preserving the representation type (...