13 #ifndef __TETGENMESHLOADER__
14 #define __TETGENMESHLOADER__
16 #define __TETGEN_14X__
20 #include <Constants.h>
21 #include <MooNMD_Io.h>
55 tetgenbehavior mTetBeh;
65 int ReadBoundFile(
int N_BoundComps);
66 int ReadBoundComp(std::ifstream *in,
int &CurrBoundComp,
int &Range);
67 int ReadBoundType(std::ifstream *in,
char *buff);
68 int ReadBoundParams(std::ifstream *in,
char *type,
int CurrBoundComp,
int Range);
69 int ReadBoundParamsCylinder(std::ifstream *in,
double &radius,
70 double &px,
double &py,
double &pz,
71 double &ax,
double &ay,
double &az,
72 double &nx,
double &ny,
double &nz);
73 int ReadBoundParamsSphere(std::ifstream *in,
double &radius,
74 double &mx,
double &my,
double &mz);
76 int ExtractValue(
const char *buff,
int increment,
double &val);
77 int ExtractVector(
const char *buff,
int increment,
78 double &val1,
double &val2,
double &val3);
80 int SetBdPlaneParams(
int N_BoundComps);
82 void Normalize3D(
double *vec);
83 void Cross3D(
double *vec1,
double *vec2,
double *res);
85 int AllocVertices(
double &StartX,
double &StartY,
double &StartZ,
86 double &BoundX,
double &BoundY,
double &BoundZ);
87 int AllocRootCells(
TBaseCell **&CellTree,
int &N_RootCells);
89 int DistributeJoints(
TBaseCell **CellTree);
91 int FindTriface(
int a,
int b,
int c);
93 int CreateAdjacency();
95 void MakeOptionString(std::string &opts);
97 void MakeBoundaryLayer_smesh();
98 void MakeBoundaryLayer_msh();
99 void FindBoundaryPoints_msh(
int *pointlist,
double *normallist);
101 int Load_msh(
const char *filename);
105 int &N_BoundComps,
int *&StartBdCompID,
int *&Interfaces);
109 int &N_BoundComps,
int *&StartBdCompID,
int *&Interfaces);
116 double &StartX,
double &StartY,
double &StartZ,
117 double &BoundX,
double &BoundY,
double &BoundZ);
149 int Generate(
int N_Points,
double *Points,
int N_Facets,
int *Facets,
int BuildMooNMDMesh(TBaseCell **&CellTree, int &N_RootCells, double &StartX, double &StartY, double &StartZ, double &BoundX, double &BoundY, double &BoundZ)
Definition: TetGenMeshLoader.C:1109
bool plc
Definition: TetGenMeshLoader.h:60
Definition: TetGenMeshLoader.h:30
int Tetgen()
Definition: TetGenMeshLoader.C:1125
contains the boundary description, the virtual cell tree and macro grid
Definition: Domain.h:36
tetgenio mTetIn
Definition: TetGenMeshLoader.h:52
TVertex ** mAllVertices
Definition: TetGenMeshLoader.h:43
TJoint ** mAllJoints
Definition: TetGenMeshLoader.h:46
Definition: BoundComp3D.h:17
TBoundComp3D ** mAllBoundComps
Definition: TetGenMeshLoader.h:40
int BuildBoundary2(TBoundPart **&BdParts, int &N_BoundParts, int &N_BoundComps, int *&StartBdCompID, int *&Interfaces)
Definition: TetGenMeshLoader.C:991
Definition: BoundPart.h:21
int Generate(TDomain *Domain)
Definition: TetGenMeshLoader.C:774
information for finite element data structure
Definition: BaseCell.h:25
int BuildBoundary(TBoundPart **&BdParts, int &N_BoundParts, int &N_BoundComps, int *&StartBdCompID, int *&Interfaces)
Definition: TetGenMeshLoader.C:97
Definition: TetGenMeshLoader.h:120
char * mBoundFile
Definition: TetGenMeshLoader.h:37
char * mFileName
Definition: TetGenMeshLoader.h:34