22 class CPosePDFGaussian;
46 virtual void copyFrom(
const CPosePDF &o) = 0;
54 virtual void bayesianFusion(
const CPosePDF &p1,
const CPosePDF &p2,
const double&minMahalanobisDistToDrop = 0) = 0 ;
74 static void jacobiansPoseComposition(
79 const bool compute_df_dx =
true,
80 const bool compute_df_du =
true );
83 static void jacobiansPoseComposition(
91 enum { is_3D_val = 0 };
92 static inline bool is_3D() {
return is_3D_val!=0; }
93 enum { is_PDF_val = 1 };
94 static inline bool is_PDF() {
return is_PDF_val!=0; }
100 template <
class OPENGL_SETOFOBJECTSPTR>
102 typedef typename OPENGL_SETOFOBJECTSPTR::value_type SETOFOBJECTS;
109 template <
class OPENGL_SETOFOBJECTSPTR>
111 typedef typename OPENGL_SETOFOBJECTSPTR::value_type SETOFOBJECTS;
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...
#define DEFINE_VIRTUAL_SERIALIZABLE(class_name)
This declaration must be inserted in virtual CSerializable classes definition:
Declares a class that represents a Probability Density function (PDF) of a 2D pose ...
Eigen::Matrix< dataType, 4, 4 > inverse(Eigen::Matrix< dataType, 4, 4 > &pose)
#define DEFINE_SERIALIZABLE_PRE_CUSTOM_BASE(class_name, base_name)
This declaration must be inserted in all CSerializable classes definition, before the class declarati...
Declares a class that represents a probability density function (pdf) of a 2D pose (x...
This is the global namespace for all Mobile Robot Programming Toolkit (MRPT) libraries.
A class used to store a 2D pose, including the 2D coordinate point and a heading (phi) angle...
#define DEFINE_SERIALIZABLE_POST_CUSTOM_BASE(class_name, base_name)
void getAs3DObject(OPENGL_SETOFOBJECTSPTR &out_obj) const
Returns a 3D representation of this PDF (it doesn't clear the current contents of out_obj...
CSetOfObjectsPtr posePDF2opengl(const POSE_PDF &o)
Returns a representation of a the PDF - this is just an auxiliary function, it's more natural to call...