28 #ifndef CPosePDFGaussian_H
29 #define CPosePDFGaussian_H
38 using namespace mrpt::math;
60 void assureSymmetry();
109 void copyFrom(
const CPosePDF &o);
122 void changeCoordinatesReference(
const CPose3D &newReferenceBase );
127 void changeCoordinatesReference(
const CPose2D &newReferenceBase );
131 void rotateCov(
const double ang);
139 void inverseComposition(
147 void drawSingleSample(
CPose2D &outPart )
const;
151 void drawManySamples(
size_t N, std::vector<vector_double> & outSamples )
const;
162 void bayesianFusion(
const CPosePDF &p1,
const CPosePDF &p2,
const double &minMahalanobisDistToDrop = 0 );
166 void inverse(CPosePDF &o)
const;
174 double evaluatePDF(
const CPose2D &x )
const;
178 double evaluateNormalizedPDF(
const CPose2D &x )
const;
186 void assureMinCovariance(
const double & minStdXY,
const double &minStdPhi );
195 this->inverseComposition(*
this,ref);