46 #ifndef vpMbtDistanceLine_HH
47 #define vpMbtDistanceLine_HH
49 #include <visp3/core/vpHomogeneousMatrix.h>
50 #include <visp3/core/vpLine.h>
51 #include <visp3/core/vpPoint.h>
52 #include <visp3/mbt/vpMbHiddenFaces.h>
53 #include <visp3/mbt/vpMbtMeLine.h>
54 #include <visp3/visual_features/vpFeatureLine.h>
74 bool isTrackedLineWithVisibility;
85 std::vector<vpMbtMeLine *> meline;
98 std::vector<unsigned int> nbFeature;
100 unsigned int nbFeatureTotal;
106 std::list<int> Lindex_polygon;
109 std::vector<bool> Lindex_polygon_tracked;
136 void addPolygon(
const int &index);
144 const vpColor &col,
unsigned int thickness = 1,
bool displayFullModel =
false);
146 const vpColor &col,
unsigned int thickness = 1,
bool displayFullModel =
false);
155 inline void getCameraParameters(
vpCameraParameters &camera)
const { camera = this->cam; }
162 inline unsigned int getIndex()
const {
return index; }
171 inline double getMeanWeight()
const {
return wmean; }
173 std::vector<std::vector<double> > getFeaturesForDisplay();
175 std::vector<std::vector<double> > getModelForDisplay(
unsigned int width,
unsigned int height,
178 bool displayFullModel =
false);
185 inline std::string getName()
const {
return name; }
194 void initInteractionMatrixError();
204 inline bool isTracked()
const {
return isTrackedLineWithVisibility; }
211 inline bool isVisible()
const {
return isvisible; }
220 inline void setCameraParameters(
const vpCameraParameters &camera) { this->cam = camera; }
227 inline void setIndex(
unsigned int i) { index = i; }
234 inline void setMeanWeight(
double w_mean) { this->wmean = w_mean; }
236 void setMovingEdge(
vpMe *Me);
243 inline void setName(
const std::string &line_name) { this->name = line_name; }
250 inline void setName(
const char *line_name) { this->name = std::string(line_name); }
252 void setTracked(
const std::string &name,
const bool &track);
260 void setVisible(
bool _isvisible) { isvisible = _isvisible; }
266 void updateTracked();