MeshKit
1.0
|
Generate the all-hexahedral mesh by sweeping. More...
#include <OneToOneSwept.hpp>
Public Member Functions | |
OneToOneSwept (MKCore *mk_core, const MEntVector &me_vec) | |
~OneToOneSwept () | |
virtual void | setup_this () |
Pure virtual, derived class must define. | |
virtual void | execute_this () |
Pure virtual, derived class must define. | |
virtual const moab::EntityType * | mesh_types_arr () const |
Return the mesh entity types operated on by this scheme. | |
void | SetSourceSurface (int index) |
void | SetTargetSurface (int index) |
Static Public Member Functions | |
static const char * | name () |
Get class name. | |
static bool | can_mesh (iBase_EntityType dim) |
Function returning whether this scheme can mesh entities of t the specified dimension. | |
static bool | can_mesh (ModelEnt *me) |
Function returning whether this scheme can mesh the specified entity. | |
static const moab::EntityType * | output_types () |
Get list of mesh entity types that can be generated. | |
Private Member Functions | |
bool | isConcave () |
void | BuildLateralBoundaryLayers (ModelEnt *me, std::vector< moab::EntityHandle > &layers) |
moab::ErrorCode | NodeAbove (moab::EntityHandle node1, moab::EntityHandle node2, moab::Range &quadsOnLateralSurfaces, moab::EntityHandle &node3, moab::EntityHandle &node4) |
moab::ErrorCode | FourthNodeInQuad (moab::EntityHandle node1, moab::EntityHandle node2, moab::EntityHandle node3, moab::Range &quadsOnLateralSurfaces, moab::EntityHandle &node4) |
int | TargetSurfProjection (std::vector< moab::EntityHandle > &boundLayers) |
int | ProjectInteriorLayers (std::vector< moab::EntityHandle > &boundLayers, vector< vector< Vertex > > &linkVertexList) |
int | CreateElements (vector< vector< Vertex > > &linkVertexList) |
void | computeTransformationFromSourceToTarget (std::vector< Vector3D > &sNodes, Vector3D &sc, std::vector< Vector3D > &tNodes, Vector3D &tc, Matrix3D &transMatrix) |
Private Attributes | |
iBase_EntityHandle | sourceSurface |
iBase_EntityHandle | targetSurface |
iBase_EntityHandle | volume |
moab::Interface * | mb |
int | numLayers |
int | numLoops |
int | sizeBLayer |
iGeom * | igeom_inst |
int | index_src |
int | index_tar |
iBase_TagHandle | geom_id_tag |
std::vector< Vertex > | NodeList |
std::vector< Vertex > | TVertexList |
std::vector< Face > | FaceList |
iBase_EntitySetHandle | volumeSet |
std::set< moab::EntityHandle > | markedMoabEnts |
Generate the all-hexahedral mesh by sweeping.
OneToOneSwept generates the all-hexahedral mesh by sweeping the source mesh to the target surface
Definition at line 49 of file OneToOneSwept.hpp.
OneToOneSwept | ( | MKCore * | mk_core, |
const MEntVector & | me_vec | ||
) |
Definition at line 32 of file OneToOneSwept.cpp.
~OneToOneSwept | ( | ) |
Definition at line 39 of file OneToOneSwept.cpp.
void BuildLateralBoundaryLayers | ( | ModelEnt * | me, |
std::vector< moab::EntityHandle > & | layers | ||
) | [private] |
Definition at line 229 of file OneToOneSwept.cpp.
static bool can_mesh | ( | iBase_EntityType | dim | ) | [inline, static] |
Function returning whether this scheme can mesh entities of t the specified dimension.
dim | entity dimension |
Definition at line 68 of file OneToOneSwept.hpp.
Function returning whether this scheme can mesh the specified entity.
Used by MeshOpFactory to find scheme for an entity.
me | ModelEnt being queried |
Definition at line 79 of file OneToOneSwept.hpp.
void computeTransformationFromSourceToTarget | ( | std::vector< Vector3D > & | sNodes, |
Vector3D & | sc, | ||
std::vector< Vector3D > & | tNodes, | ||
Vector3D & | tc, | ||
Matrix3D & | transMatrix | ||
) | [private] |
Definition at line 823 of file OneToOneSwept.cpp.
int CreateElements | ( | vector< vector< Vertex > > & | linkVertexList | ) | [private] |
Definition at line 966 of file OneToOneSwept.cpp.
void execute_this | ( | ) | [virtual] |
Pure virtual, derived class must define.
Implements GraphNode.
Definition at line 189 of file OneToOneSwept.cpp.
moab::ErrorCode FourthNodeInQuad | ( | moab::EntityHandle | node1, |
moab::EntityHandle | node2, | ||
moab::EntityHandle | node3, | ||
moab::Range & | quadsOnLateralSurfaces, | ||
moab::EntityHandle & | node4 | ||
) | [private] |
Definition at line 493 of file OneToOneSwept.cpp.
bool isConcave | ( | ) | [private] |
Definition at line 563 of file OneToOneSwept.cpp.
virtual const moab::EntityType* mesh_types_arr | ( | ) | const [inline, virtual] |
Return the mesh entity types operated on by this scheme.
moab::MBMAXTYPE
Implements MeshOp.
Definition at line 92 of file OneToOneSwept.hpp.
static const char* name | ( | ) | [inline, static] |
Get class name.
Definition at line 59 of file OneToOneSwept.hpp.
moab::ErrorCode NodeAbove | ( | moab::EntityHandle | node1, |
moab::EntityHandle | node2, | ||
moab::Range & | quadsOnLateralSurfaces, | ||
moab::EntityHandle & | node3, | ||
moab::EntityHandle & | node4 | ||
) | [private] |
Definition at line 440 of file OneToOneSwept.cpp.
const moab::EntityType * output_types | ( | ) | [static] |
Get list of mesh entity types that can be generated.
moab::MBMAXTYPE
Definition at line 25 of file OneToOneSwept.cpp.
int ProjectInteriorLayers | ( | std::vector< moab::EntityHandle > & | boundLayers, |
vector< vector< Vertex > > & | linkVertexList | ||
) | [private] |
Definition at line 856 of file OneToOneSwept.cpp.
void SetSourceSurface | ( | int | index | ) |
Definition at line 46 of file OneToOneSwept.cpp.
void SetTargetSurface | ( | int | index | ) |
Definition at line 53 of file OneToOneSwept.cpp.
void setup_this | ( | ) | [virtual] |
Pure virtual, derived class must define.
Implements GraphNode.
Definition at line 60 of file OneToOneSwept.cpp.
int TargetSurfProjection | ( | std::vector< moab::EntityHandle > & | boundLayers | ) | [private] |
Definition at line 610 of file OneToOneSwept.cpp.
Definition at line 155 of file OneToOneSwept.hpp.
iBase_TagHandle geom_id_tag [private] |
Definition at line 150 of file OneToOneSwept.hpp.
iGeom* igeom_inst [private] |
Definition at line 148 of file OneToOneSwept.hpp.
int index_src [private] |
Definition at line 149 of file OneToOneSwept.hpp.
int index_tar [private] |
Definition at line 149 of file OneToOneSwept.hpp.
std::set<moab::EntityHandle> markedMoabEnts [private] |
Definition at line 158 of file OneToOneSwept.hpp.
moab::Interface* mb [private] |
Definition at line 144 of file OneToOneSwept.hpp.
Definition at line 152 of file OneToOneSwept.hpp.
int numLayers [private] |
Definition at line 145 of file OneToOneSwept.hpp.
int numLoops [private] |
Definition at line 146 of file OneToOneSwept.hpp.
int sizeBLayer [private] |
Definition at line 147 of file OneToOneSwept.hpp.
iBase_EntityHandle sourceSurface [private] |
Definition at line 141 of file OneToOneSwept.hpp.
iBase_EntityHandle targetSurface [private] |
Definition at line 142 of file OneToOneSwept.hpp.
std::vector<Vertex> TVertexList [private] |
Definition at line 153 of file OneToOneSwept.hpp.
iBase_EntityHandle volume [private] |
Definition at line 143 of file OneToOneSwept.hpp.
iBase_EntitySetHandle volumeSet [private] |
Definition at line 156 of file OneToOneSwept.hpp.