Main MRPT website > C++ reference
MRPT logo
Public Member Functions | Static Public Member Functions

mrpt::poses::CPose3DQuatPDF Class Reference


Detailed Description

Declares a class that represents a Probability Density Function (PDF) of a 3D pose (6D actually), by means of a 7-vector with a translation [x y z] and a quaternion [qr qx qy qz].

This class is just the base class for unifying many diferent ways this PDF can be implemented.

For convenience, a pose composition is also defined for any PDF derived class, changeCoordinatesReference, in the form of a method rather than an operator.

See also the tutorial on probabilistic spatial representations in the MRPT.

See also:
CPose3DQuatPDF, CPose3DPDF

Definition at line 62 of file CPose3DQuatPDF.h.

#include <mrpt/poses/CPose3DQuatPDF.h>

Inheritance diagram for mrpt::poses::CPose3DQuatPDF:
Inheritance graph
[legend]

List of all members.

Public Member Functions

virtual void copyFrom (const CPose3DQuatPDF &o)=0
 Copy operator, translating if necesary (for example, between particles and gaussian representations)
virtual void bayesianFusion (const CPose3DQuatPDF &p1, const CPose3DQuatPDF &p2)=0
 Bayesian fusion of two pose distributions, then save the result in this object (WARNING: Currently only distributions of the same class can be fused! eg, gaussian with gaussian,etc)
virtual void inverse (CPose3DQuatPDF &o) const =0
 Returns a new PDF such as: NEW_PDF = (0,0,0) - THIS_PDF.
template<class OPENGL_SETOFOBJECTSPTR >
void getAs3DObject (OPENGL_SETOFOBJECTSPTR &out_obj) const
 Returns a 3D representation of this PDF.
template<class OPENGL_SETOFOBJECTSPTR >
OPENGL_SETOFOBJECTSPTR getAs3DObject () const
 Returns a 3D representation of this PDF.

Static Public Member Functions

static CPose3DQuatPDFcreateFrom2D (const CPosePDF &o)
 This is a static transformation method from 2D poses to 3D PDFs, preserving the representation type (particles->particles, Gaussians->Gaussians,etc) It returns a new object of any of the derived classes of CPose3DQuatPDF.

RTTI stuff

static const
mrpt::utils::TRuntimeClassId 
classCPose3DQuatPDF
class mrpt::utils::CStream
static const
mrpt::utils::TRuntimeClassId
_GetBaseClass ()
virtual const
mrpt::utils::TRuntimeClassId
GetRuntimeClass () const
 Returns information about the class of an object in runtime.

Member Function Documentation

static const mrpt::utils::TRuntimeClassId* mrpt::poses::CPose3DQuatPDF::_GetBaseClass ( ) [static, protected]

Reimplemented from mrpt::utils::CSerializable.

Reimplemented in mrpt::poses::CPose3DQuatPDFGaussian.

virtual void mrpt::poses::CPose3DQuatPDF::bayesianFusion ( const CPose3DQuatPDF p1,
const CPose3DQuatPDF p2 
) [pure virtual]

Bayesian fusion of two pose distributions, then save the result in this object (WARNING: Currently only distributions of the same class can be fused! eg, gaussian with gaussian,etc)

Implemented in mrpt::poses::CPose3DQuatPDFGaussian.

virtual void mrpt::poses::CPose3DQuatPDF::copyFrom ( const CPose3DQuatPDF o) [pure virtual]

Copy operator, translating if necesary (for example, between particles and gaussian representations)

See also:
createFrom2D

Implemented in mrpt::poses::CPose3DQuatPDFGaussian.

static CPose3DQuatPDF* mrpt::poses::CPose3DQuatPDF::createFrom2D ( const CPosePDF o) [static]

This is a static transformation method from 2D poses to 3D PDFs, preserving the representation type (particles->particles, Gaussians->Gaussians,etc) It returns a new object of any of the derived classes of CPose3DQuatPDF.

This object must be deleted by the user when not required anymore.

See also:
copyFrom
template<class OPENGL_SETOFOBJECTSPTR >
OPENGL_SETOFOBJECTSPTR mrpt::poses::CPose3DQuatPDF::getAs3DObject ( ) const [inline]

Returns a 3D representation of this PDF.

Note:
Needs the mrpt-opengl library, and using mrpt::opengl::CSetOfObjectsPtr as template argument.

Definition at line 100 of file CPose3DQuatPDF.h.

template<class OPENGL_SETOFOBJECTSPTR >
void mrpt::poses::CPose3DQuatPDF::getAs3DObject ( OPENGL_SETOFOBJECTSPTR &  out_obj) const [inline]

Returns a 3D representation of this PDF.

Note:
Needs the mrpt-opengl library, and using mrpt::opengl::CSetOfObjectsPtr as template argument.

Definition at line 92 of file CPose3DQuatPDF.h.

virtual const mrpt::utils::TRuntimeClassId* mrpt::poses::CPose3DQuatPDF::GetRuntimeClass ( ) const [virtual]

Returns information about the class of an object in runtime.

Reimplemented from mrpt::utils::CSerializable.

Reimplemented in mrpt::poses::CPose3DQuatPDFGaussian.

virtual void mrpt::poses::CPose3DQuatPDF::inverse ( CPose3DQuatPDF o) const [pure virtual]

Returns a new PDF such as: NEW_PDF = (0,0,0) - THIS_PDF.

Implemented in mrpt::poses::CPose3DQuatPDFGaussian.


Friends And Related Function Documentation

friend class mrpt::utils::CStream [friend]

Reimplemented from mrpt::utils::CSerializable.

Definition at line 66 of file CPose3DQuatPDF.h.


Member Data Documentation

Definition at line 66 of file CPose3DQuatPDF.h.




Page generated by Doxygen 1.7.3 for MRPT 0.9.4 SVN: at Sat Mar 26 06:40:17 UTC 2011