MeVisLab Toolbox Reference
|
Tool namespace for performing set operations on WEM patches. More...
Enumerations | |
enum | Axis { xAxis = 0 , yAxis , zAxis } |
Defines the main axes. More... | |
Tool namespace for performing set operations on WEM patches.
void ml::WEMSetOp::_addFacesToOutputPatch | ( | WEMVector< WEMFace > * | faces, |
WEMNode ** | nodeTable, | ||
WEMTrianglePatch * | outPatch ) |
Adds the given faces to the output patch.
References _addFacesToOutputPatch().
Referenced by _addFacesToOutputPatch().
Returns whether the bounding boxes of the given WEMs are intersecting.
References _areWEMBoundingBoxesIntersecting().
Referenced by _areWEMBoundingBoxesIntersecting().
void ml::WEMSetOp::_boolOp | ( | WEMTrianglePatch * | inPatch1, |
WEMTrianglePatch * | inPatch2, | ||
WEMTrianglePatch * | outPatch, | ||
unsigned int | boolOpMode, | ||
unsigned int | outputMode, | ||
TriangulationModes | triangulationMode, | ||
WEMVector< WEMCut > * | cuts ) |
void ml::WEMSetOp::_classifyIntersectionAndOutsideFaces | ( | WEMTrianglePatch * | inPatch1, |
WEMVector< WEMFace > * | intersectedFaces ) |
Checks all faces; if a face if fully outside, it is just marked, else it is also added to the given intersectedFaces vector.
References _classifyIntersectionAndOutsideFaces().
Referenced by _classifyIntersectionAndOutsideFaces().
Axis ml::WEMSetOp::_getMinimalOverlapAxisOfBoundingBoxes | ( | const Vector3 & | min1, |
const Vector3 & | min2, | ||
const Vector3 & | max1, | ||
const Vector3 & | max2 ) |
Returns the minimal overlap axis of the given bounding boxes.
References _getMinimalOverlapAxisOfBoundingBoxes().
Referenced by _getMinimalOverlapAxisOfBoundingBoxes().
bool ml::WEMSetOp::_intersectBoundingBoxes | ( | WEMTrianglePatch * | triPatch1, |
WEMTrianglePatch * | triPatch2 ) |
Intersects bounding boxes of given patches.
Sets outer and intersecting flags on nodes and faces. Returns whether there was any intersection.
References _intersectBoundingBoxes().
Referenced by _intersectBoundingBoxes().
void ml::WEMSetOp::_performTrivialBoolOp | ( | WEMTrianglePatch * | inPatch1, |
WEMTrianglePatch * | inPatch2, | ||
WEMTrianglePatch * | outPatch, | ||
unsigned int | boolOpMode, | ||
unsigned int | outputMode ) |
If the bounding boxes of the input WEMs do not intersect, perform a trivial Boolean operation.
References _performTrivialBoolOp().
Referenced by _performTrivialBoolOp().
void ml::WEMSetOp::_removeNonValidCuts | ( | WEMVector< WEMFace > * | intersectedFaces, |
WEMVector< WEMFaceCut > ** | faceCuts ) |
Removes all non-valid face cuts from the common face cuts vector.
References _removeNonValidCuts().
Referenced by _removeNonValidCuts().
void ml::WEMSetOp::_resetOuterAndIntersectingFlags | ( | WEMTrianglePatch * | inPatch1, |
WEMTrianglePatch * | inPatch2 ) |
Resets the status flags of nodes and faces.
References _resetOuterAndIntersectingFlags().
Referenced by _resetOuterAndIntersectingFlags().
WEMVector< WEMFaceCut > ** ml::WEMSetOp::_setupFaceCuts | ( | WEMTrianglePatch * | inPatch, |
WEMVector< WEMFace > * | intersectedFaces, | ||
WEMVector< WEMPartialFaceCut > ** | partialFaceCuts ) |
void ml::WEMSetOp::_updateClassification | ( | WEMTrianglePatch * | triPatch, |
WEMVector< WEMFaceCut > ** | faceCutTable, | ||
WEMTrianglePatch * | rayPatch, | ||
WEMVector< WEMFace > * | outerFaces = nullptr, | ||
WEMVector< WEMFace > * | innerFaces = nullptr ) |
Updates classification of nodes and faces based on face cuts.
References _updateClassification().
Referenced by _updateClassification().
MLWEM_EXPORT void ml::WEMSetOp::difference | ( | WEMTrianglePatch * | inPatch1, |
WEMTrianglePatch * | inPatch2, | ||
WEMTrianglePatch * | outPatch, | ||
unsigned int | outputMode, | ||
TriangulationModes | triangulationMode, | ||
WEMVector< WEMCut > * | cuts = nullptr ) |
MLWEM_EXPORT void ml::WEMSetOp::intersect | ( | WEMTrianglePatch * | inPatch1, |
WEMTrianglePatch * | inPatch2, | ||
WEMTrianglePatch * | outPatch, | ||
unsigned int | outputMode, | ||
TriangulationModes | triangulationMode, | ||
WEMVector< WEMCut > * | cuts = nullptr ) |
MLWEM_EXPORT void ml::WEMSetOp::unify | ( | WEMTrianglePatch * | inPatch1, |
WEMTrianglePatch * | inPatch2, | ||
WEMTrianglePatch * | outPatch, | ||
unsigned int | outputMode, | ||
TriangulationModes | triangulationMode, | ||
WEMVector< WEMCut > * | cuts = nullptr ) |