Visual Servoing Platform  version 3.6.1 under development (2024-03-28)

#include <visp3/mbt/vpMbtPolygon.h>

+ Inheritance diagram for vpMbtPolygon:

Public Types

enum  vpPolygon3DClippingType {
  NO_CLIPPING = 0 , NEAR_CLIPPING = 1 , FAR_CLIPPING = 2 , LEFT_CLIPPING = 4 ,
  RIGHT_CLIPPING = 8 , UP_CLIPPING = 16 , DOWN_CLIPPING = 32 , FOV_CLIPPING = 60 ,
  ALL_CLIPPING = 63
}
 

Public Member Functions

 vpMbtPolygon ()
 
 vpMbtPolygon (const vpMbtPolygon &mbtp)
 
int getIndex () const
 
std::string getName () const
 
bool isAppearing () const
 
bool isPolygonOriented ()
 
virtual bool isVisible (const vpHomogeneousMatrix &cMo, double alpha, const bool &modulo=false, const vpCameraParameters &cam=vpCameraParameters(), unsigned int width=0, unsigned int height=0)
 
bool isVisible () const
 
vpMbtPolygonoperator= (const vpMbtPolygon &mbtp)
 
virtual void setIndex (int i)
 
void setLod (bool use_lod)
 
void setMinLineLengthThresh (double min_line_length)
 
void setMinPolygonAreaThresh (double min_polygon_area)
 
void setName (const std::string &face_name)
 
void setIsPolygonOriented (const bool &oriented)
 
void addPoint (unsigned int n, const vpPoint &P)
 
void changeFrame (const vpHomogeneousMatrix &cMo)
 
void computePolygonClipped (const vpCameraParameters &cam=vpCameraParameters())
 
unsigned int getClipping () const
 
double getFarClippingDistance () const
 
unsigned int getNbPoint () const
 
unsigned int getNbCornerInsidePrevImage () const
 
unsigned int getNbCornerInsideImage (const vpImage< unsigned char > &I, const vpCameraParameters &cam)
 
double getNearClippingDistance () const
 
vpPointgetPoint (const unsigned int _index)
 
std::vector< vpImagePointgetRoi (const vpCameraParameters &cam)
 
std::vector< vpImagePointgetRoi (const vpCameraParameters &cam, const vpHomogeneousMatrix &cMo)
 
void getRoiClipped (const vpCameraParameters &cam, std::vector< vpImagePoint > &roi)
 
void getRoiClipped (const vpCameraParameters &cam, std::vector< vpImagePoint > &roi, const vpHomogeneousMatrix &cMo)
 
void getRoiClipped (const vpCameraParameters &cam, std::vector< std::pair< vpImagePoint, unsigned int > > &roi)
 
void getRoiClipped (const vpCameraParameters &cam, std::vector< std::pair< vpImagePoint, unsigned int > > &roi, const vpHomogeneousMatrix &cMo)
 

Public Attributes

int index
 
bool isvisible
 
bool isappearing
 
bool useLod
 
double minLineLengthThresh
 
double minPolygonAreaThresh
 
std::string name
 
bool hasOrientation
 
unsigned int nbpt
 
unsigned int nbCornersInsidePrev
 
vpPointp
 
std::vector< std::pair< vpPoint, unsigned int > > polyClipped
 
unsigned int clippingFlag
 
double distNearClip
 
double distFarClip
 

Deprecated functions

vp_deprecated void getRoiClipped (std::vector< vpPoint > &points)
 
void getPolygonClipped (std::vector< std::pair< vpPoint, unsigned int > > &poly)
 
void getPolygonClipped (std::vector< vpPoint > &poly)
 
void setClipping (const unsigned int &flags)
 
void setFarClippingDistance (const double &dist)
 
virtual void setNbPoint (unsigned int nb)
 
void setNearClippingDistance (const double &dist)
 
static void getClippedPolygon (const std::vector< vpPoint > &ptIn, std::vector< vpPoint > &ptOut, const vpHomogeneousMatrix &cMo, const unsigned int &clippingFlags, const vpCameraParameters &cam=vpCameraParameters(), const double &znear=0.001, const double &zfar=100)
 
static void getMinMaxRoi (const std::vector< vpImagePoint > &roi, int &i_min, int &i_max, int &j_min, int &j_max)
 
static bool roiInsideImage (const vpImage< unsigned char > &I, const std::vector< vpImagePoint > &corners)
 

Detailed Description

Implementation of a polygon of the model used by the model-based tracker.

Definition at line 57 of file vpMbtPolygon.h.

Member Enumeration Documentation

◆ vpPolygon3DClippingType

Enumerator
NO_CLIPPING 
NEAR_CLIPPING 
FAR_CLIPPING 
LEFT_CLIPPING 
RIGHT_CLIPPING 
UP_CLIPPING 
DOWN_CLIPPING 
FOV_CLIPPING 
ALL_CLIPPING 

Definition at line 57 of file vpPolygon3D.h.

Constructor & Destructor Documentation

◆ vpMbtPolygon() [1/2]

vpMbtPolygon::vpMbtPolygon ( )

Basic constructor.

Definition at line 54 of file vpMbtPolygon.cpp.

◆ vpMbtPolygon() [2/2]

vpMbtPolygon::vpMbtPolygon ( const vpMbtPolygon mbtp)

Definition at line 59 of file vpMbtPolygon.cpp.

Member Function Documentation

◆ addPoint()

void vpPolygon3D::addPoint ( unsigned int  n,
const vpPoint P 
)
inherited

Add a corner point to the list of polygon's corners.

Parameters
n: The index of the corner.
P: The point to add.

Definition at line 133 of file vpPolygon3D.cpp.

References vpPolygon3D::p.

Referenced by vpMbTracker::addPolygon(), vpMbTracker::addProjectionErrorPolygon(), vpMbtDistanceLine::buildFrom(), and vpPolygon3D::getClippedPolygon().

◆ changeFrame()

void vpPolygon3D::changeFrame ( const vpHomogeneousMatrix cMo)
inherited

Project the 3D corner points into the image thanks to the pose of the camera.

Parameters
cMo: The pose of the camera.

Definition at line 145 of file vpPolygon3D.cpp.

References vpPoint::changeFrame(), vpPolygon3D::nbpt, vpPolygon3D::p, and vpPoint::projection().

Referenced by vpPolygon3D::getClippedPolygon(), vpPolygon3D::getRoi(), vpPolygon3D::getRoiClipped(), isVisible(), vpMbKltTracker::reinit(), and vpMbKltTracker::setPose().

◆ computePolygonClipped()

◆ getClippedPolygon()

void vpPolygon3D::getClippedPolygon ( const std::vector< vpPoint > &  ptIn,
std::vector< vpPoint > &  ptOut,
const vpHomogeneousMatrix cMo,
const unsigned int &  clippingFlags,
const vpCameraParameters cam = vpCameraParameters(),
const double &  znear = 0.001,
const double &  zfar = 100 
)
staticinherited

Static method to compute the clipped points from a set of initial points.

Warning
When using FOV clipping and personnal camera parameters, camera normals have to be computed before (see vpCameraParameters::computeFov())
Parameters
ptIn: Input points
ptOut: Output points (result of the clipping).
cMo: Pose considered for the clipping.
clippingFlagsClipping flag (see vpPolygon3D::vpPolygon3DClippingType).
cam: Camera parameters (Only used if clipping flags contain FOV clipping).
znear: Near clipping distance value (Only used if clipping flags contain Near clipping).
zfar: Far clipping distance value (Only used if clipping flags contain Far clipping).

Definition at line 569 of file vpPolygon3D.cpp.

References vpPolygon3D::addPoint(), vpPolygon3D::changeFrame(), vpPolygon3D::computePolygonClipped(), vpPolygon3D::FAR_CLIPPING, vpPolygon3D::getPolygonClipped(), vpPolygon3D::NEAR_CLIPPING, vpPolygon3D::setClipping(), vpPolygon3D::setFarClippingDistance(), vpPolygon3D::setNbPoint(), and vpPolygon3D::setNearClippingDistance().

Referenced by vpImageSimulator::setCameraPosition().

◆ getClipping()

unsigned int vpPolygon3D::getClipping ( ) const
inlineinherited

Get the clipping used.

See also
vpPolygon3DClipping
Returns
Clipping flags.

Definition at line 113 of file vpPolygon3D.h.

Referenced by vpMbtDistanceLine::getModelForDisplay(), vpMbtDistanceLine::initMovingEdge(), and vpMbtDistanceLine::updateMovingEdge().

◆ getFarClippingDistance()

double vpPolygon3D::getFarClippingDistance ( ) const
inlineinherited

Get the far distance for clipping.

Returns
Far clipping value.

Definition at line 120 of file vpPolygon3D.h.

◆ getIndex()

◆ getMinMaxRoi()

void vpPolygon3D::getMinMaxRoi ( const std::vector< vpImagePoint > &  roi,
int &  i_min,
int &  i_max,
int &  j_min,
int &  j_max 
)
staticinherited

◆ getName()

◆ getNbCornerInsideImage()

unsigned int vpPolygon3D::getNbCornerInsideImage ( const vpImage< unsigned char > &  I,
const vpCameraParameters cam 
)
inherited

Static method to check the number of points of a region defined by the vector of image point that are inside the image.

Parameters
I: The image used for its size.
cam: The camera parameters.

Definition at line 532 of file vpPolygon3D.cpp.

References vpMeterPixelConversion::convertPoint(), vpImagePoint::get_i(), vpImagePoint::get_j(), vpImage< Type >::getHeight(), vpImage< Type >::getWidth(), vpPolygon3D::nbCornersInsidePrev, vpPolygon3D::nbpt, and vpPolygon3D::p.

◆ getNbCornerInsidePrevImage()

unsigned int vpPolygon3D::getNbCornerInsidePrevImage ( ) const
inlineinherited

Return the number of corners at the previous computation.

Returns
number of corner of the face at the previous computation

Definition at line 134 of file vpPolygon3D.h.

◆ getNbPoint()

◆ getNearClippingDistance()

double vpPolygon3D::getNearClippingDistance ( ) const
inlineinherited

Get the near distance for clipping.

Returns
Near clipping value.

Definition at line 143 of file vpPolygon3D.h.

◆ getPoint()

vpPoint & vpPolygon3D::getPoint ( const unsigned int  _index)
inherited

Get a reference to a corner.

Exceptions
vpException::dimensionErrorif the _index is out of range.
Parameters
_index: the index of the corner

Definition at line 106 of file vpPolygon3D.cpp.

References vpException::dimensionError, vpPolygon3D::nbpt, and vpPolygon3D::p.

Referenced by vpMbtDistanceKltPoints::init().

◆ getPolygonClipped() [1/2]

void vpPolygon3D::getPolygonClipped ( std::vector< std::pair< vpPoint, unsigned int > > &  poly)
inherited

Get the 3D clipped points and their clipping information.

Warning
Suppose that changeFrame() and computePolygonClipped() have already been called.
Parameters
poly: resulting points plus clipping information.

Definition at line 436 of file vpPolygon3D.cpp.

References vpPolygon3D::polyClipped.

Referenced by vpMbtFaceDepthNormal::computeNormalVisibility(), vpMbtFaceDepthDense::computeROI(), vpPolygon3D::getClippedPolygon(), and vpMbtDistanceKltPoints::getModelForDisplay().

◆ getPolygonClipped() [2/2]

void vpPolygon3D::getPolygonClipped ( std::vector< vpPoint > &  poly)
inherited

Get the 3D clipped points.

Warning
Suppose that changeFrame() and computePolygonClipped() have already been called.
Parameters
poly: resulting points.

Definition at line 446 of file vpPolygon3D.cpp.

References vpPolygon3D::polyClipped.

◆ getRoi() [1/2]

std::vector< vpImagePoint > vpPolygon3D::getRoi ( const vpCameraParameters cam)
inherited

Get the region of interest in the image.

Warning
Suppose that changeFrame() has already been called.
Parameters
cam: camera parameters.
Returns
Image point corresponding to the region of interest.

Definition at line 385 of file vpPolygon3D.cpp.

References vpMeterPixelConversion::convertPoint(), vpPolygon3D::nbpt, and vpPolygon3D::p.

Referenced by vpPolygon3D::getRoi().

◆ getRoi() [2/2]

std::vector< vpImagePoint > vpPolygon3D::getRoi ( const vpCameraParameters cam,
const vpHomogeneousMatrix cMo 
)
inherited

Get the region of interest in the image.

Parameters
cam: camera parameters.
cMo: pose.
Returns
Image point corresponding to the region of interest.

Definition at line 405 of file vpPolygon3D.cpp.

References vpPolygon3D::changeFrame(), and vpPolygon3D::getRoi().

◆ getRoiClipped() [1/5]

void vpPolygon3D::getRoiClipped ( const vpCameraParameters cam,
std::vector< std::pair< vpImagePoint, unsigned int > > &  roi 
)
inherited

Get the region of interest clipped in the image and the information to know if it's a clipped point.

Warning
Suppose that changeFrame() and computePolygonClipped() have already been called.
Parameters
cam: camera parameters.
roi: image point corresponding to the region of interest with clipping information.

Definition at line 499 of file vpPolygon3D.cpp.

References vpMeterPixelConversion::convertPoint(), and vpPolygon3D::polyClipped.

◆ getRoiClipped() [2/5]

void vpPolygon3D::getRoiClipped ( const vpCameraParameters cam,
std::vector< std::pair< vpImagePoint, unsigned int > > &  roi,
const vpHomogeneousMatrix cMo 
)
inherited

Get the region of interest clipped in the image and the information to know if it's a clipped point.

Parameters
cam: camera parameters.
roi: image point corresponding to the region of interest with clipping information.
cMo: pose.

Definition at line 517 of file vpPolygon3D.cpp.

References vpPolygon3D::changeFrame(), vpPolygon3D::computePolygonClipped(), and vpPolygon3D::getRoiClipped().

◆ getRoiClipped() [3/5]

void vpPolygon3D::getRoiClipped ( const vpCameraParameters cam,
std::vector< vpImagePoint > &  roi 
)
inherited

Get the region of interest clipped in the image.

Warning
Suppose that changeFrame() and computePolygonClipped() have already been called.
Parameters
cam: camera parameters.
roi: image point corresponding to the region of interest.

Definition at line 462 of file vpPolygon3D.cpp.

References vpMeterPixelConversion::convertPoint(), and vpPolygon3D::polyClipped.

Referenced by vpMbtFaceDepthNormal::computeNormalVisibility(), vpMbtFaceDepthNormal::computeROI(), vpMbtFaceDepthDense::computeROI(), vpPolygon3D::getRoiClipped(), vpMbtDistanceKltPoints::init(), isVisible(), and vpMbtDistanceKltPoints::updateMask().

◆ getRoiClipped() [4/5]

void vpPolygon3D::getRoiClipped ( const vpCameraParameters cam,
std::vector< vpImagePoint > &  roi,
const vpHomogeneousMatrix cMo 
)
inherited

Get the region of interest clipped in the image.

Parameters
cam: camera parameters.
cMo: pose.
roi: image point corresponding to the region of interest.

Definition at line 480 of file vpPolygon3D.cpp.

References vpPolygon3D::changeFrame(), vpPolygon3D::computePolygonClipped(), and vpPolygon3D::getRoiClipped().

◆ getRoiClipped() [5/5]

void vpPolygon3D::getRoiClipped ( std::vector< vpPoint > &  points)
inherited

Get the 3D points of the clipped region of interest.

Warning
Suppose that changeFrame() and computePolygonClipped() have already been called.
Parameters
points: resulting points.

Definition at line 420 of file vpPolygon3D.cpp.

References vpPolygon3D::polyClipped.

◆ isAppearing()

bool vpMbtPolygon::isAppearing ( ) const
inline

Definition at line 100 of file vpMbtPolygon.h.

◆ isPolygonOriented()

bool vpMbtPolygon::isPolygonOriented ( )
inline

Definition at line 101 of file vpMbtPolygon.h.

◆ isVisible() [1/2]

bool vpMbtPolygon::isVisible ( ) const
inline

Definition at line 105 of file vpMbtPolygon.h.

◆ isVisible() [2/2]

bool vpMbtPolygon::isVisible ( const vpHomogeneousMatrix cMo,
double  alpha,
const bool &  modulo = false,
const vpCameraParameters cam = vpCameraParameters(),
unsigned int  width = 0,
unsigned int  height = 0 
)
virtual

Check if the polygon is visible in the image and if the angle between the normal to the face and the line vector going from the optical center to the cog of the face is below the given threshold. To do that, the polygon is projected into the image thanks to the camera pose.

Parameters
cMo: The pose of the camera.
alpha: Maximum angle to detect if the face is visible (in rad).
modulo: Indicates if the test should also consider faces that are not oriented counter clockwise. If true, the orientation of the face is without importance.
cam: Camera parameters (intrinsics parameters)
width,height: Image size used to consider level of detail.
Returns
Return true if the polygon is visible.

Definition at line 98 of file vpMbtPolygon.cpp.

References vpPolygon3D::changeFrame(), vpPolygon3D::clippingFlag, vpCameraParameters::computeFov(), vpPolygon3D::computePolygonClipped(), vpTracker::cP, vpColVector::dotProd(), vpPoint::get_X(), vpPoint::get_Y(), vpPoint::get_Z(), vpPolygon::getArea(), vpPolygon3D::getRoiClipped(), hasOrientation, isappearing, isvisible, minLineLengthThresh, minPolygonAreaThresh, vpPolygon3D::nbpt, vpColVector::normalize(), vpPolygon3D::p, vpMath::rad(), vpPoint::set_X(), vpPoint::set_Y(), vpPoint::set_Z(), and useLod.

Referenced by vpMbtFaceDepthDense::computeVisibility(), vpMbtFaceDepthNormal::computeVisibility(), vpMbEdgeKltTracker::computeVVS(), vpMbKltTracker::computeVVSInteractionMatrixAndResidu(), vpMbKltTracker::getFeaturesForDisplayKlt(), vpMbtDistanceKltPoints::getModelForDisplay(), vpMbtFaceDepthDense::getModelForDisplay(), vpMbtFaceDepthNormal::getModelForDisplay(), vpMbKltTracker::postTracking(), vpMbKltTracker::preTracking(), vpMbKltTracker::reinit(), vpMbKltTracker::setPose(), and vpMbKltTracker::testTracking().

◆ operator=()

vpMbtPolygon & vpMbtPolygon::operator= ( const vpMbtPolygon mbtp)

◆ roiInsideImage()

bool vpPolygon3D::roiInsideImage ( const vpImage< unsigned char > &  I,
const std::vector< vpImagePoint > &  corners 
)
staticinherited

Static method to check whether the region defined by the vector of image point is contained entirely in the image.

Parameters
I: The image used for its size.
corners: The vector of points defining a region

Definition at line 633 of file vpPolygon3D.cpp.

References vpImage< Type >::getHeight(), and vpImage< Type >::getWidth().

◆ setClipping()

void vpPolygon3D::setClipping ( const unsigned int &  flags)
inlineinherited

Specify which clipping to use.

See also
vpPolygon3DClipping
Parameters
flags: New clipping flags.

Definition at line 182 of file vpPolygon3D.h.

Referenced by vpMbEdgeTracker::addLine(), vpMbtFaceDepthDense::addLine(), vpMbtFaceDepthNormal::addLine(), vpMbTracker::addProjectionErrorLine(), vpPolygon3D::getClippedPolygon(), and vpMbEdgeTracker::setClipping().

◆ setFarClippingDistance()

void vpPolygon3D::setFarClippingDistance ( const double &  dist)
inlineinherited

◆ setIndex()

virtual void vpMbtPolygon::setIndex ( int  i)
inlinevirtual

Set the index of the face.

Parameters
i: the new index of the face.

Definition at line 114 of file vpMbtPolygon.h.

Referenced by vpMbTracker::addPolygon(), and vpMbTracker::addProjectionErrorPolygon().

◆ setIsPolygonOriented()

void vpMbtPolygon::setIsPolygonOriented ( const bool &  oriented)
inline

Set if the polygon is oriented or not.

Parameters
oriented: True if the polygon is oriented, false otherwise.

Definition at line 156 of file vpMbtPolygon.h.

Referenced by vpMbTracker::addPolygon(), and vpMbTracker::addProjectionErrorPolygon().

◆ setLod()

void vpMbtPolygon::setLod ( bool  use_lod)

Set the flag to consider if the level of detail (LOD) is used or not. When activated, lines and faces of the 3D model are tracked if respectively their projected length and area in the image are significative enough. By significative, we mean:

Parameters
use_lod: true if level of detail must be used, false otherwise.

The sample code below shows how to introduce this feature:

#include <visp3/io/vpImageIo.h>
#include <visp3/mbt/vpMbEdgeTracker.h>
int main()
{
// Acquire an image
vpImageIo::read(I, "my-image.pgm");
std::string object = "my-object";
vpMbEdgeTracker tracker;
tracker.loadConfigFile( object+".xml" );
tracker.loadModel( object+".cao" );
tracker.setLod(true);
tracker.setMinLineLengthThresh(20.);
tracker.setMinPolygonAreaThresh(20.*20.);
tracker.initClick(I, object+".init" );
while (true) {
// tracking loop
}
}
static void read(vpImage< unsigned char > &I, const std::string &filename, int backend=IO_DEFAULT_BACKEND)
Definition: vpImageIo.cpp:143
Make the complete tracking of an object by using its CAD model.
virtual void loadConfigFile(const std::string &configFile, bool verbose=true) vp_override
virtual void setMinLineLengthThresh(double minLineLengthThresh, const std::string &name="")
virtual void setMinPolygonAreaThresh(double minPolygonAreaThresh, const std::string &name="")
virtual void initClick(const vpImage< unsigned char > &I, const std::string &initFile, bool displayHelp=false, const vpHomogeneousMatrix &T=vpHomogeneousMatrix())
virtual void setLod(bool useLod, const std::string &name="")
virtual void loadModel(const std::string &modelFile, bool verbose=false, const vpHomogeneousMatrix &T=vpHomogeneousMatrix())
See also
setMinLineLengthThresh(), setMinPolygonAreaThresh()

Definition at line 270 of file vpMbtPolygon.cpp.

References useLod.

Referenced by vpMbTracker::addPolygon(), and vpMbTracker::addProjectionErrorPolygon().

◆ setMinLineLengthThresh()

void vpMbtPolygon::setMinLineLengthThresh ( double  min_line_length)
inline

Set the threshold for the minimum line length to be considered as visible in the LOD (level of detail) case. This threshold is only used when setLoD() is turned on.

Parameters
min_line_length: threshold for the minimum line length in pixel. When a single line that doesn't belong to a face is considered by the tracker, this line is tracked only if its length in pixel is greater than min_line_length.
See also
setLoD()

Definition at line 131 of file vpMbtPolygon.h.

Referenced by vpMbTracker::addPolygon(), and vpMbTracker::addProjectionErrorPolygon().

◆ setMinPolygonAreaThresh()

void vpMbtPolygon::setMinPolygonAreaThresh ( double  min_polygon_area)
inline

Set the minimum polygon area to be considered as visible in the LOD (level of detail) case. This threshold is only used when setLoD() is turned on.

Parameters
min_polygon_area: threshold for the minimum polygon area in pixel. When a face is considered by the tracker, this face is tracked only if its area in pixel is greater than min_polygon_area.
See also
setLoD()

Definition at line 142 of file vpMbtPolygon.h.

Referenced by vpMbTracker::addPolygon(), and vpMbTracker::addProjectionErrorPolygon().

◆ setName()

void vpMbtPolygon::setName ( const std::string &  face_name)
inline

Set the name of the face.

Parameters
face_name: name of the face.

Definition at line 149 of file vpMbtPolygon.h.

Referenced by vpMbTracker::addPolygon(), and vpMbTracker::addProjectionErrorPolygon().

◆ setNbPoint()

void vpPolygon3D::setNbPoint ( unsigned int  nb)
virtualinherited

Set the number of points which are the corners of the polygon.

Parameters
nb: The number of corners.

Definition at line 119 of file vpPolygon3D.cpp.

References vpPolygon3D::nbpt, and vpPolygon3D::p.

Referenced by vpMbTracker::addPolygon(), vpMbTracker::addProjectionErrorPolygon(), vpMbtDistanceLine::buildFrom(), and vpPolygon3D::getClippedPolygon().

◆ setNearClippingDistance()

void vpPolygon3D::setNearClippingDistance ( const double &  dist)
inlineinherited

Member Data Documentation

◆ clippingFlag

unsigned int vpPolygon3D::clippingFlag
inherited

Clipping flag.

Definition at line 80 of file vpPolygon3D.h.

Referenced by vpPolygon3D::computePolygonClipped(), isVisible(), and vpPolygon3D::operator=().

◆ distFarClip

double vpPolygon3D::distFarClip
inherited

Distance for near clipping.

Definition at line 84 of file vpPolygon3D.h.

Referenced by vpPolygon3D::computePolygonClipped(), and vpPolygon3D::operator=().

◆ distNearClip

double vpPolygon3D::distNearClip
inherited

Distance for near clipping.

Definition at line 82 of file vpPolygon3D.h.

Referenced by vpPolygon3D::computePolygonClipped(), and vpPolygon3D::operator=().

◆ hasOrientation

bool vpMbtPolygon::hasOrientation

Boolean that specify if the polygon has an orientation or not (mainly used for cylinders)

Definition at line 80 of file vpMbtPolygon.h.

Referenced by isVisible(), and operator=().

◆ index

int vpMbtPolygon::index

Index of the polygon. Cannot be unsigned int because default value is -1.

Definition at line 62 of file vpMbtPolygon.h.

Referenced by operator=().

◆ isappearing

bool vpMbtPolygon::isappearing

flag to specify whether the face is appearing or not

Definition at line 66 of file vpMbtPolygon.h.

Referenced by isVisible(), and operator=().

◆ isvisible

bool vpMbtPolygon::isvisible

flag to specify whether the face is visible or not

Definition at line 64 of file vpMbtPolygon.h.

Referenced by vpMbtFaceDepthDense::isVisible(), vpMbtFaceDepthNormal::isVisible(), isVisible(), and operator=().

◆ minLineLengthThresh

double vpMbtPolygon::minLineLengthThresh

Threshold for minimum line length in pixel to consider if the line is visible or not in LOD case

Definition at line 72 of file vpMbtPolygon.h.

Referenced by isVisible(), and operator=().

◆ minPolygonAreaThresh

double vpMbtPolygon::minPolygonAreaThresh

Threshold for minimum polygon area in pixel to consider if the polygon is visible or not in LOD case

Definition at line 75 of file vpMbtPolygon.h.

Referenced by isVisible(), and operator=().

◆ name

std::string vpMbtPolygon::name

Name of the polygon.

Definition at line 77 of file vpMbtPolygon.h.

Referenced by operator=().

◆ nbCornersInsidePrev

unsigned int vpPolygon3D::nbCornersInsidePrev
inherited

Number of corners inside the image during the last call to getNbCornerInsideImage

Definition at line 74 of file vpPolygon3D.h.

Referenced by vpPolygon3D::getNbCornerInsideImage(), and vpPolygon3D::operator=().

◆ nbpt

◆ p

◆ polyClipped

◆ useLod

bool vpMbtPolygon::useLod

Flag to specify if the visibility of the polygon depends also of the current level of detail (LOD)

Definition at line 69 of file vpMbtPolygon.h.

Referenced by isVisible(), operator=(), and setLod().