NeoPZ
|
Implement the interface between TPZGeoMesh and the files produced by tetgen. Getting Data. More...
#include <pzreadtetgen.h>
Public Member Functions | |
TPZReadTetGen () | |
~TPZReadTetGen () | |
TPZGeoMesh * | Process (std::string NodeFileName, std::string FaceFileName, std::string TetraFileName) |
Convert tetgen files in a TPZGeoMesh object. More... | |
Private Member Functions | |
bool | ProcessNodes (std::string NodeFileName, TPZGeoMesh &gmesh, int64_t &numbernodes) |
Process nodes. More... | |
bool | ProcessFaces (std::string FaceFileName, TPZGeoMesh &gmesh, int64_t &numberfaces) |
Process faces. More... | |
bool | ProcessTetra (std::string TetraFileName, TPZGeoMesh &gmesh, int64_t &numbervols) |
Process tetrahedras. More... | |
Private Attributes | |
std::map< int64_t, int64_t > | fNodeIndices |
Nodes in tetgen are counted from 1 to n as a fortran based code. More... | |
Implement the interface between TPZGeoMesh and the files produced by tetgen. Getting Data.
Definition at line 26 of file pzreadtetgen.h.
TPZReadTetGen::TPZReadTetGen | ( | ) |
Definition at line 13 of file pzreadtetgen.cpp.
TPZReadTetGen::~TPZReadTetGen | ( | ) |
Definition at line 17 of file pzreadtetgen.cpp.
TPZGeoMesh * TPZReadTetGen::Process | ( | std::string | NodeFileName, |
std::string | FaceFileName, | ||
std::string | TetraFileName | ||
) |
Convert tetgen files in a TPZGeoMesh object.
If something does not work in the process, a null pointer is returned.
Definition at line 21 of file pzreadtetgen.cpp.
References TPZGeoMesh::BuildConnectivity(), ProcessFaces(), TPZMultiTimer::processName(), ProcessNodes(), ProcessTetra(), TPZMultiTimer::start(), and TPZMultiTimer::stop().
|
private |
Process faces.
Returns true if the process worked succesfuly and false otherwise.
Definition at line 101 of file pzreadtetgen.cpp.
References TPZGeoMesh::CreateGeoElement(), ETriangle, fNodeIndices, and nodind.
Referenced by Process().
|
private |
Process nodes.
Return true if the process worked succesfuly and false otherwise.
Definition at line 67 of file pzreadtetgen.cpp.
References TPZAdmChunkVector< T, EXP >::AllocateNewElement(), fNodeIndices, and TPZGeoMesh::NodeVec().
Referenced by Process().
|
private |
Process tetrahedras.
Returns true if the process worked succesfuly and false otherwise.
Definition at line 128 of file pzreadtetgen.cpp.
References TPZGeoMesh::CreateGeoElement(), ETetraedro, fNodeIndices, and nodind.
Referenced by Process().
|
private |
Nodes in tetgen are counted from 1 to n as a fortran based code.
In PZ, nodes have one Id and one index. index is defined by TPZGeoMesh when a new node is allocated in NodeVec(). This object maps from the Id to the index. fNodeIndices[ Id ] = index.
Definition at line 57 of file pzreadtetgen.h.
Referenced by ProcessFaces(), ProcessNodes(), and ProcessTetra().