MeVisLab Toolbox Reference
|
Checks whether a point is inside a planar, closed polygon in an arbitrary plane. More...
#include <CSOPointInPolygonChecker.h>
Public Member Functions | |
CSOPointInPolygonChecker (const CSO *cso) | |
Sets the polygon based on a CSO. | |
CSOPointInPolygonChecker (std::vector< Vector3 > &pathPoints, const Vector3 &normal, bool overwritePathPoints=false) | |
Sets the polygon based on a list of points and a normal. | |
~CSOPointInPolygonChecker () | |
Destructor. | |
void | set (const CSO *cso) |
Sets the polygon based on a CSO. | |
void | set (std::vector< Vector3 > &pathPoints, const Vector3 &normal, bool overwritePathPoints=false) |
Sets the polygon based on a list of points and a normal. | |
bool | isPointInsidePolygon (const Vector3 &pos) const |
Checks whether a given point is inside the polygon. | |
Checks whether a point is inside a planar, closed polygon in an arbitrary plane.
The algorithm uses a bounding box test and a binning along the y-axis of the line segments. The CSOPointInPolygonChecker is optimized for testing a number of points against the same CSO. If only one point should be tested against a CSO, use the CSOPointInPolygon class.
Definition at line 32 of file CSOPointInPolygonChecker.h.
Sets the polygon based on a CSO.
ml::CSOPointInPolygonChecker::CSOPointInPolygonChecker | ( | std::vector< Vector3 > & | pathPoints, |
const Vector3 & | normal, | ||
bool | overwritePathPoints = false ) |
Sets the polygon based on a list of points and a normal.
If overwritePathPoints is true the given pathPoints vector will be overwritten by the projected polygon points!
|
inline |
Destructor.
Definition at line 47 of file CSOPointInPolygonChecker.h.
Checks whether a given point is inside the polygon.
void ml::CSOPointInPolygonChecker::set | ( | std::vector< Vector3 > & | pathPoints, |
const Vector3 & | normal, | ||
bool | overwritePathPoints = false ) |
Sets the polygon based on a list of points and a normal.
If overwritePathPoints is true the given pathPoints vector will be overwritten by the projected polygon points!