MeVisLabToolboxReference
MeVisLab/Standard/Sources/ML/MLWEM/WEMTools/WEMEdgeOp/WEMEdgeOp.h
Go to the documentation of this file.
00001 // **InsertLicense** code
00002 //----------------------------------------------------------------------------------
00006 
00013 #ifndef __WEMEdgeOp_H
00014 #define __WEMEdgeOp_H
00015 
00016 #include "WEMBase/WEM.h"
00017 
00018 #include "WEMDataStructure/WEMHeap.h"
00019 #include "WEMTools/WEMToolsIncludes.h"
00020 
00021 
00022 ML_START_NAMESPACE
00023 
00025 
00029 namespace WEMEdgeOp
00030 {
00032   MLWEM_EXPORT bool checkSwap(WEMTrianglePatch* triPatch, WEMEdge* edge, void* heap=NULL, float maxDihedralAngleNeigh=0.99999331899f);
00034   MLWEM_EXPORT bool performSwap(WEMTrianglePatch* triPatch, WEMEdge* edge, void* heap=NULL, float maxDihedralAngleNeigh=0.99999331899f);
00035 
00037   MLWEM_EXPORT bool checkSplit(WEMTrianglePatch* triPatch, WEMEdge* edge, void* heap=NULL, float maxEdgeLength=1.0f);
00039   MLWEM_EXPORT WEMNode* performSplit(WEMTrianglePatch* triPatch, WEMEdge* edge, void* heap=NULL, float maxEdgeLength=1.0f);
00040 
00043   MLWEM_EXPORT bool checkCollapse(WEMTrianglePatch* triPatch, WEMEdge* edge, void* heap=NULL, float maxDihedralAngleNeigh=0.99999331899f);
00045   MLWEM_EXPORT WEMNode* performCollapse(WEMTrianglePatch* triPatch, WEMEdge* edge, void* heap=NULL, float maxDihedralAngleNeigh=0.99999331899f);
00046 
00048   MLWEM_EXPORT void deleteTetrahedron(WEMTrianglePatch* triPatch, WEMNode* node, void* heap=NULL);
00050   MLWEM_EXPORT bool deleteNodeWithValenceThree(WEMTrianglePatch* triPatch, WEMNode* node, void* heap=NULL, float maxDihedralAngleNeigh=0.99999331899f);
00051 };
00052 
00054 
00055 ML_END_NAMESPACE
00056 
00057 #endif // __WEMEdgeOp_H