47 #ifndef vpMbtDistanceCylinder_HH 48 #define vpMbtDistanceCylinder_HH 50 #include <visp3/core/vpCircle.h> 51 #include <visp3/core/vpCylinder.h> 52 #include <visp3/core/vpHomogeneousMatrix.h> 53 #include <visp3/core/vpLine.h> 54 #include <visp3/core/vpPoint.h> 55 #include <visp3/mbt/vpMbHiddenFaces.h> 56 #include <visp3/mbt/vpMbtMeLine.h> 57 #include <visp3/visual_features/vpFeatureLine.h> 77 bool isTrackedCylinder;
143 void buildFrom(
const vpPoint &_p1,
const vpPoint &_p2,
const double r);
148 const vpColor &col,
const unsigned int thickness = 1,
const bool displayFullModel =
false);
150 const vpColor &col,
const unsigned int thickness = 1,
const bool displayFullModel =
false);
190 inline std::string
getName()
const {
return name; }
192 void initInteractionMatrixError();
202 inline bool isTracked()
const {
return isTrackedCylinder; }
225 inline void setTracked(
const bool &track) { this->isTrackedCylinder = track; }
232 inline void setIndex(
const unsigned int i) { index = i; }
248 void setMovingEdge(
vpMe *Me);
255 inline void setName(
const std::string &cyl_name) { this->name = cyl_name; }
262 inline void setName(
const char *cyl_name) { this->name = std::string(cyl_name); }
270 inline void setVisible(
bool _isvisible) { isvisible = _isvisible; }
Implementation of a matrix and operations on matrices.
vpCylinder * c
The cylinder.
vpMbHiddenFaces< vpMbtPolygon > * hiddenface
Pointer to the list of faces.
void setName(const char *cyl_name)
bool isvisible
Indicates if the cylinder is visible or not.
void setMeanWeight2(const double wmean)
Implementation of an homogeneous matrix and operations on such kind of matrices.
void setCameraParameters(const vpCameraParameters &camera)
Class to define colors available for display functionnalities.
Manage a cylinder used in the model-based tracker.
unsigned int nbFeature
The number of moving edges.
void setIndex(const unsigned int i)
vpPoint * p1
The first extremity on the axe.
Class that defines what is a point.
vpMatrix L
The interaction matrix.
unsigned int nbFeaturel1
The number of moving edges on line 1.
int index_polygon
Index of the face which contains the cylinder.
double getMeanWeight2() const
vpCircle * cercle2
The lower circle limiting the cylinder.
Generic class defining intrinsic camera parameters.
Class that defines a 2D line visual feature which is composed by two parameters that are and ...
vpMbtMeLine * meline1
The moving edge containers (first line of the cylinder)
void setMeanWeight1(const double wmean)
void setVisible(bool _isvisible)
vpPoint * p2
The second extremity on the axe.
Class that defines what is a cylinder.
Implementation of column vector and the associated operations.
vpColVector error
The error vector.
vpCircle * cercle1
The upper circle limiting the cylinder.
bool Reinit
Indicates if the line has to be reinitialized.
double radius
The radius of the cylinder.
double getMeanWeight1() const
unsigned int nbFeaturel2
The number of moving edges on line 2.
void setName(const std::string &cyl_name)
Class that defines what is a circle.
vpMbtMeLine * meline2
The moving edge containers (second line of the cylinder)
std::string getName() const
void getCameraParameters(vpCameraParameters &camera)
void setTracked(const bool &track)