44#ifndef vpMbtDistanceLine_HH
45#define vpMbtDistanceLine_HH
47#include <visp3/core/vpHomogeneousMatrix.h>
48#include <visp3/core/vpLine.h>
49#include <visp3/core/vpPoint.h>
50#include <visp3/core/vpUniRand.h>
51#include <visp3/mbt/vpMbHiddenFaces.h>
52#include <visp3/mbt/vpMbtMeLine.h>
53#include <visp3/visual_features/vpFeatureLine.h>
73 bool isTrackedLineWithVisibility;
135 void addPolygon(
const int &index);
143 const vpColor &col,
unsigned int thickness = 1,
bool displayFullModel =
false);
145 const vpColor &col,
unsigned int thickness = 1,
bool displayFullModel =
false);
161 inline unsigned int getIndex()
const {
return index; }
172 std::vector<std::vector<double> > getFeaturesForDisplay();
174 std::vector<std::vector<double> > getModelForDisplay(
unsigned int width,
unsigned int height,
176 bool displayFullModel =
false);
183 inline std::string
getName()
const {
return name; }
192 void initInteractionMatrixError();
202 inline bool isTracked()
const {
return isTrackedLineWithVisibility; }
225 inline void setIndex(
unsigned int i) { index = i; }
234 void setMovingEdge(
vpMe *Me);
241 inline void setName(
const std::string &line_name) { this->name = line_name; }
248 inline void setName(
const char *line_name) { this->name = std::string(line_name); }
250 void setTracked(
const std::string &name,
const bool &track);
264 void updateTracked();
Generic class defining intrinsic camera parameters.
Implementation of column vector and the associated operations.
Class to define RGB colors available for display functionalities.
Class that defines a 2D line visual feature which is composed by two parameters that are and ,...
Implementation of an homogeneous matrix and operations on such kind of matrices.
Definition of the vpImage class member functions.
Class that defines a 3D line in the object frame and allows forward projection of the line in the cam...
Implementation of a matrix and operations on matrices.
Implementation of the polygons management for the model-based trackers.
Manage the line of a polygon used in the model-based tracker.
std::vector< unsigned int > nbFeature
The number of moving edges.
std::vector< bool > Lindex_polygon_tracked
bool isvisible
Indicates if the line is visible or not.
void setIndex(unsigned int i)
vpPoint * p2
The second extremity.
double getMeanWeight() const
vpLine * line
The 3D line.
void getCameraParameters(vpCameraParameters &camera) const
std::list< int > Lindex_polygon
Index of the faces which contain the line.
unsigned int nbFeatureTotal
The number of moving edges.
bool Reinit
Indicates if the line has to be reinitialized.
std::string getName() const
vpColVector error
The error vector.
vpMbHiddenFaces< vpMbtPolygon > * hiddenface
Pointer to the list of faces.
vpMbtPolygon & getPolygon()
bool useScanLine
Use scanline rendering.
vpPoint * p1
The first extremity.
unsigned int getIndex() const
void setName(const char *line_name)
std::vector< vpMbtMeLine * > meline
The moving edge container.
vpMatrix L
The interaction matrix.
void setCameraParameters(const vpCameraParameters &camera)
void setName(const std::string &line_name)
void setMeanWeight(double w_mean)
void setVisible(bool _isvisible)
Implementation of a polygon of the model used by the model-based tracker.
Class that defines a 3D point in the object frame and allows forward projection of a 3D point in the ...
Class for generating random numbers with uniform probability density.