MeshKit
1.0
|
00001 #ifndef __MESHIMPROVE_HPP 00002 #define __MESHIMPROVE_HPP 00003 00004 #include <stdlib.h> 00005 #include <stdio.h> 00006 #include <assert.h> 00007 #include <string> 00008 #include <iostream> 00009 #include <fstream> 00010 #include <string.h> 00011 #include <limits.h> 00012 00013 #include "MKVersion.h" 00014 #include "meshkit/MKCore.hpp" 00015 #include "meshkit/iMesh.hpp" 00016 #include "meshkit/MeshOp.hpp" 00017 #include "meshkit/ModelEnt.hpp" 00018 #include <set> 00019 #include <vector> 00020 #include <map> 00021 00022 //#include <MsqError.hpp> 00023 //#include <ShapeImprovementWrapper.hpp> 00024 //#include <MsqIMesh.hpp> 00025 //#include <MsqIGeom.hpp> 00026 00027 using namespace std; 00028 00029 namespace MeshKit { 00030 00031 class MeshImprove 00032 { 00033 public: 00034 //public function 00035 MeshImprove(MKCore* core, bool isLaplacian = false, bool isUntangle = true, bool isShapeImprove = true, bool isSizeAdapt = true, iGeom * geom_inst = NULL); 00036 ~MeshImprove(); 00037 void SurfMeshImprove(iBase_EntityHandle surface, iBase_EntitySetHandle surfMesh, iBase_EntityType entity_type); 00038 void VolumeMeshImprove(iBase_EntitySetHandle volMesh, iBase_EntityType entity_type); 00039 private: 00040 //member variables 00041 MKCore* mk_core; 00042 // double max; 00043 // iBase_EntitySetHandle mesh_root_set; 00044 // iBase_TagHandle mesh_id_tag; 00045 bool IsLaplacian, IsUntangle, IsShapeImprove, IsSizeAdapt; 00046 iGeom * igeom_inst; 00047 }; 00048 00049 } 00050 #endif 00051