32 #ifndef COVARIANCE_VISUAL_H 33 #define COVARIANCE_VISUAL_H 37 #include <OGRE/OgreSceneManager.h> 45 CovarianceVisual(Ogre::SceneManager* sceneManager, Ogre::SceneNode* parentNode);
55 virtual void setColor(
const Ogre::ColourValue& c) = 0;
60 virtual void setMeanCovariance(
const Ogre::Vector3& mean,
const Ogre::Matrix3& cov) = 0;
77 virtual void setColor(
const Ogre::ColourValue& c);
79 virtual void setMeanCovariance(
const Ogre::Vector3& mean,
const Ogre::Matrix3& cov);
85 double set_angle_to_range(
double alpha,
double min);
89 void calc_ellipse(
double xc,
double yc,
double a,
double b,
double phi,
int& np,
double*& xvec,
double*& yvec);
93 void calc_prob_elli_95(
double xc,
double yc,
double sxx,
double syy,
double sxy,
int& np,
double*& x,
double*& y);
97 void calc_prob_elli_99(
double xc,
double yc,
double sxx,
double syy,
double sxy,
int& np,
double*& x,
double*& y);
102 #endif // COVARIANCE_VISUAL_H
virtual void setLineWidth(float lineWidth)=0
void setPosition(const Ogre::Vector3 &position)
CovarianceVisual(Ogre::SceneManager *sceneManager, Ogre::SceneNode *parentNode)
void setVisible(bool visible)
void setOrientation(const Ogre::Quaternion &orientation)
Ogre::SceneManager * m_sceneManager
rviz::BillboardLine * m_line
virtual ~CovarianceVisual()
virtual void setColor(const Ogre::ColourValue &c)=0
Ogre::SceneNode * m_sceneNode
virtual void setMeanCovariance(const Ogre::Vector3 &mean, const Ogre::Matrix3 &cov)=0
NOTE: It is assumed that the covariance matrix is already rotated into the target frame of the sceneN...