9#ifndef CPoseRandomSampler_H
10#define CPoseRandomSampler_H
116 this->getOriginalPDFCov2D(M);
126 this->getOriginalPDFCov3D(M);
A numeric matrix of compile-time fixed size.
A class used to store a 2D pose.
A class used to store a 3D pose (a 3D translation + a rotation in 3D).
Declares a class that represents a Probability Density Function (PDF) of a 3D pose (6D actually).
Declares a class that represents a probability density function (pdf) of a 2D pose (x,...
An efficient generator of random samples drawn from a given 2D (CPosePDF) or 3D (CPose3DPDF) pose pro...
CPose2D & drawSample(CPose2D &p) const
Generate a new sample from the selected PDF.
CPosePDF * m_pdf2D
A local copy of the PDF.
CPose3DPDF * m_pdf3D
A local copy of the PDF.
CPose2D m_fastdraw_gauss_M_2D
~CPoseRandomSampler()
Destructor.
CPose2D & getSamplingMean2D(CPose2D &out_mean) const
If the object has been loaded with setPosePDF this method returns the 2D pose mean samples will be dr...
bool isPrepared() const
Return true if samples can be generated, which only requires a previous call to setPosePDF.
mrpt::math::CMatrixDouble33 m_fastdraw_gauss_Z3
CPose3D m_fastdraw_gauss_M_3D
void setPosePDF(const CPosePDF &pdf)
This method must be called to select the PDF from which to draw samples.
void setPosePDF(const CPose3DPDF *pdf)
This method must be called to select the PDF from which to draw samples.
void getOriginalPDFCov3D(mrpt::math::CMatrixDouble &cov6x6) const
Retrieves the 6x6 covariance of the original PDF in .
void setPosePDF(const CPose3DPDFPtr &pdf)
This method must be called to select the PDF from which to draw samples.
void do_sample_3D(CPose3D &p) const
Used internally: sample from m_pdf3D.
CPose3D & drawSample(CPose3D &p) const
Generate a new sample from the selected PDF.
mrpt::math::CMatrixDouble66 m_fastdraw_gauss_Z6
void setPosePDF(const CPose3DPDF &pdf)
This method must be called to select the PDF from which to draw samples.
void clear()
Clear internal pdf.
void setPosePDF(const CPosePDF *pdf)
This method must be called to select the PDF from which to draw samples.
void getOriginalPDFCov3D(mrpt::math::CMatrixDouble66 &cov6x6) const
Retrieves the 6x6 covariance of the original PDF in .
CPoseRandomSampler()
Default constructor.
void getOriginalPDFCov2D(mrpt::math::CMatrixDouble33 &cov3x3) const
Retrieves the 3x3 covariance of the original PDF in .
CPose3D & getSamplingMean3D(CPose3D &out_mean) const
If the object has been loaded with setPosePDF this method returns the 3D pose mean samples will be dr...
void setPosePDF(const CPosePDFPtr &pdf)
This method must be called to select the PDF from which to draw samples.
void do_sample_2D(CPose2D &p) const
Used internally: sample from m_pdf2D.
void getOriginalPDFCov2D(mrpt::math::CMatrixDouble &cov3x3) const
Retrieves the 3x3 covariance of the original PDF in .
CMatrixTemplateNumeric< double > CMatrixDouble
Declares a matrix of double numbers (non serializable).
This is the global namespace for all Mobile Robot Programming Toolkit (MRPT) libraries.