59 const double minMahalanobisDistToDrop = 0) = 0;
62 const CPose3D& newReferenceBase) = 0;
82 template <
class OPENGL_SETOFOBJECTSPTR>
85 using SETOFOBJECTS =
typename OPENGL_SETOFOBJECTSPTR::element_type;
93 template <
class OPENGL_SETOFOBJECTSPTR,
class OPENGL_SETOFOBJECTS>
96 using SETOFOBJECTS =
typename OPENGL_SETOFOBJECTSPTR::value_type;
static constexpr bool is_3D()
virtual void bayesianFusion(const CPointPDF &p1, const CPointPDF &p2, const double minMahalanobisDistToDrop=0)=0
Bayesian fusion of two point distributions (product of two distributions->new distribution), then save the result in this object (WARNING: See implementing classes to see classes that can and cannot be mixtured!)
#define DEFINE_VIRTUAL_SERIALIZABLE(class_name)
This declaration must be inserted in virtual CSerializable classes definition:
void getAs3DObject(OPENGL_SETOFOBJECTSPTR &out_obj) const
Returns a 3D representation of this PDF (it doesn't clear the current contents of out_obj...
Classes for 2D/3D geometry representation, both of single values and probability density distribution...
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...
A class used to store a 3D pose (a 3D translation + a rotation in 3D).
static constexpr bool is_PDF()
OPENGL_SETOFOBJECTSPTR getAs3DObject() const
Returns a 3D representation of this PDF.
The virtual base class which provides a unified interface for all persistent objects in MRPT...
virtual void changeCoordinatesReference(const CPose3D &newReferenceBase)=0
virtual void copyFrom(const CPointPDF &o)=0
Copy operator, translating if necesary (for example, between particles and gaussian representations) ...
Declares a class that represents a Probability Distribution function (PDF) of a 3D point (x...
A generic template for probability density distributions (PDFs).