MeVisLabToolboxReference
ml::WEMEdgeOp Namespace Reference

Helper namespace for performing swap, split and collapse operations on edges of a WEM. More...

Functions

MLWEM_EXPORT bool checkSwap (WEMTrianglePatch *triPatch, WEMEdge *edge, void *heap=NULL, float maxDihedralAngleNeigh=0.99999331899f)
 Returns whether the given edge of the triangle patch can be swapped.
MLWEM_EXPORT bool performSwap (WEMTrianglePatch *triPatch, WEMEdge *edge, void *heap=NULL, float maxDihedralAngleNeigh=0.99999331899f)
 Performs a swapping of the edge in a triangle patch. Returns whether a swapping was performed.
MLWEM_EXPORT bool checkSplit (WEMTrianglePatch *triPatch, WEMEdge *edge, void *heap=NULL, float maxEdgeLength=1.0f)
 Returns whether the given edge of the triangle patch can be split.
MLWEM_EXPORT WEMNodeperformSplit (WEMTrianglePatch *triPatch, WEMEdge *edge, void *heap=NULL, float maxEdgeLength=1.0f)
 Performs a splitting of the edge in a triangle patch. Returns the node which has been inserted.
MLWEM_EXPORT bool checkCollapse (WEMTrianglePatch *triPatch, WEMEdge *edge, void *heap=NULL, float maxDihedralAngleNeigh=0.99999331899f)
 Returns whether the given edge in the triangle patch can be collapsed.
MLWEM_EXPORT WEMNodeperformCollapse (WEMTrianglePatch *triPatch, WEMEdge *edge, void *heap=NULL, float maxDihedralAngleNeigh=0.99999331899f)
 Performs a collapsing of the given edge in a triangle patch and returns the inserted node.
MLWEM_EXPORT void deleteTetrahedron (WEMTrianglePatch *triPatch, WEMNode *node, void *heap=NULL)
 Deletes a tetrahedron constellation where the given node is part of.
MLWEM_EXPORT bool deleteNodeWithValenceThree (WEMTrianglePatch *triPatch, WEMNode *node, void *heap=NULL, float maxDihedralAngleNeigh=0.99999331899f)
 Deletes a node with a valence of 3. Returns whether the operation was successful.

Detailed Description

Helper namespace for performing swap, split and collapse operations on edges of a WEM.

All methods accept an optional pointer to an edge-heap which can be maintained by the method.


Function Documentation

MLWEM_EXPORT bool ml::WEMEdgeOp::checkCollapse ( WEMTrianglePatch *  triPatch,
WEMEdge *  edge,
void *  heap = NULL,
float  maxDihedralAngleNeigh = 0.99999331899f 
)

Returns whether the given edge in the triangle patch can be collapsed.

An optional maximum dihedral angle for the neighboring faces can be given. Default for this is 12 degrees.

MLWEM_EXPORT bool ml::WEMEdgeOp::checkSplit ( WEMTrianglePatch *  triPatch,
WEMEdge *  edge,
void *  heap = NULL,
float  maxEdgeLength = 1.0f 
)

Returns whether the given edge of the triangle patch can be split.

MLWEM_EXPORT bool ml::WEMEdgeOp::checkSwap ( WEMTrianglePatch *  triPatch,
WEMEdge *  edge,
void *  heap = NULL,
float  maxDihedralAngleNeigh = 0.99999331899f 
)

Returns whether the given edge of the triangle patch can be swapped.

MLWEM_EXPORT bool ml::WEMEdgeOp::deleteNodeWithValenceThree ( WEMTrianglePatch *  triPatch,
WEMNode *  node,
void *  heap = NULL,
float  maxDihedralAngleNeigh = 0.99999331899f 
)

Deletes a node with a valence of 3. Returns whether the operation was successful.

MLWEM_EXPORT void ml::WEMEdgeOp::deleteTetrahedron ( WEMTrianglePatch *  triPatch,
WEMNode *  node,
void *  heap = NULL 
)

Deletes a tetrahedron constellation where the given node is part of.

MLWEM_EXPORT WEMNode* ml::WEMEdgeOp::performCollapse ( WEMTrianglePatch *  triPatch,
WEMEdge *  edge,
void *  heap = NULL,
float  maxDihedralAngleNeigh = 0.99999331899f 
)

Performs a collapsing of the given edge in a triangle patch and returns the inserted node.

MLWEM_EXPORT WEMNode* ml::WEMEdgeOp::performSplit ( WEMTrianglePatch *  triPatch,
WEMEdge *  edge,
void *  heap = NULL,
float  maxEdgeLength = 1.0f 
)

Performs a splitting of the edge in a triangle patch. Returns the node which has been inserted.

MLWEM_EXPORT bool ml::WEMEdgeOp::performSwap ( WEMTrianglePatch *  triPatch,
WEMEdge *  edge,
void *  heap = NULL,
float  maxDihedralAngleNeigh = 0.99999331899f 
)

Performs a swapping of the edge in a triangle patch. Returns whether a swapping was performed.