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,
const unsigned int thickness = 1,
const bool displayFullModel =
false);
146 const vpColor &col,
const unsigned int thickness = 1,
const bool displayFullModel =
false);
154 inline void getCameraParameters(
vpCameraParameters &camera)
const { camera = this->cam; }
161 inline unsigned int getIndex()
const {
return index; }
170 inline double getMeanWeight()
const {
return wmean; }
177 inline std::string getName()
const {
return name; }
186 void initInteractionMatrixError();
196 inline bool isTracked()
const {
return isTrackedLineWithVisibility; }
203 inline bool isVisible()
const {
return isvisible; }
212 inline void setCameraParameters(
const vpCameraParameters &camera) { this->cam = camera; }
219 inline void setIndex(
const unsigned int i) { index = i; }
226 inline void setMeanWeight(
const double w_mean) { this->wmean = w_mean; }
228 void setMovingEdge(
vpMe *Me);
235 inline void setName(
const std::string &line_name) { this->name = line_name; }
242 inline void setName(
const char *line_name) { this->name = std::string(line_name); }
244 void setTracked(
const std::string &name,
const bool &track);
252 void setVisible(
bool _isvisible) { isvisible = _isvisible; }
258 void updateTracked();