![]() |
MechSys
1.0
Computing library for simulations in continuum and discrete mechanics
|
Mesh generation More...
Classes | |
| class | AlphaShape |
| struct | Share |
| Forward declaration due to the following definitions. More... | |
| struct | Vertex |
| struct | Cell |
| class | Generic |
| class | Block |
| class | Structured |
| class | Unstructured |
Typedefs | |
| typedef CGAL::Exact_predicates_inexact_constructions_kernel | CGAL_K |
| typedef CGAL::Alpha_shape_vertex_base_2 < CGAL_K > | CGAL_VB_2 |
| typedef CGAL::Triangulation_face_base_2 < CGAL_K > | CGAL_TF_2 |
| typedef CGAL::Alpha_shape_face_base_2 < CGAL_K, CGAL_TF_2 > | CGAL_FB_2 |
| typedef CGAL::Triangulation_default_data_structure_2 < CGAL_K, CGAL_VB_2, CGAL_FB_2 > | CGAL_TDS_2 |
| typedef CGAL::Delaunay_triangulation_2 < CGAL_K, CGAL_TDS_2 > | CGAL_DT_2 |
| typedef CGAL::Alpha_shape_2 < CGAL_DT_2 > | CGAL_ALPHA_SHAPE_2 |
| typedef CGAL::Alpha_shape_vertex_base_3 < CGAL_K > | CGAL_VB_3 |
| typedef CGAL::Alpha_shape_cell_base_3 < CGAL_K > | CGAL_FB_3 |
| typedef CGAL::Triangulation_data_structure_3 < CGAL_VB_3, CGAL_FB_3 > | CGAL_TDS_3 |
| typedef CGAL::Delaunay_triangulation_3 < CGAL_K, CGAL_TDS_3 > | CGAL_DT_3 |
| typedef CGAL::Alpha_shape_3 < CGAL_DT_3 > | CGAL_ALPHA_SHAPE_3 |
| typedef std::map< int, int > | BryTag_t |
| Map: edge/face ID => edge/face tag. | |
| typedef boost::tuple< int, int, int, int > | BryKey_t |
| Edge/face key = (left_node,right_node) for edges or (node0,node1,node2) for faces. | |
| typedef std::pair< int, Cell * > | NeighDat_t |
| Pair: local edge/face ID, neighbour cell. | |
| typedef std::map< BryKey_t, NeighDat_t > | Neighs_t |
| Map: edge/face key => neighbour data. | |
| typedef std::map< BryKey_t, Array< NeighDat_t > > | BryCell_t |
| Map: edge/face key => cells sharing this boundary (edge/face) | |
| typedef std::map< Vertex *, Array< Vertex * > > | Pin_t |
| Pin type. | |
| typedef std::map< int, SDPair > | Side2Ctr_t |
| Side to constraint map. | |
| typedef triangulateio | TriIO |
| typedef tetgenio | TetIO |
Functions | |
| int | CellGetBryTag (int iSide, Cell const *c) |
| int | CellGetNeigh (int iSide, Cell const *c) |
| std::ostream & | operator<< (std::ostream &os, BryKey_t const &BK) |
| std::ostream & | operator<< (std::ostream &os, Generic const &M) |
| std::ostream & | operator<< (std::ostream &os, Block const &B) |
| void | TriAllocate (int NPoints, int NSegments, int NRegions, int NHoles, TriIO &Tio) |
| void | TriSetAllToNull (TriIO &Tio) |
| void | TriDeallocateAll (TriIO &Tio) |
Variables | |
| size_t | MaxNVerts2D = 8 |
| size_t | NVertsToNEdges2D [] = {0,0,0,3,4,0,3,0,4} |
| size_t | NVertsToNVertsPerEdge2D [] = {0,0,0,2,2,0,3,0,3} |
| int | NVertsToEdge2D [][4][3] |
| size_t | MaxNVerts3D = 20 |
| size_t | NVertsToNFaces3D [] = {0,0,0,0, 4, 0,0,0, 6, 0, 4, 0,0,0,0,0,0,0,0,0, 6} |
| size_t | NVertsToNVertsPerFace3D [] = {0,0,0,0, 3, 0,0,0, 4, 0, 3, 0,0,0,0,0,0,0,0,0, 4} |
| int | NVertsToFace3D [][6][4] |
| size_t | NVertsToNEdges3D [] = {0,0,0,0, 6, 0,0,0, 12, 0, 6, 0,0,0,0,0,0,0,0,0, 12} |
| int | NVertsToEdge3D [][12][3] |
| size_t | NVertsToGeoNVerts2D [] |
| size_t | NVertsToGeoNVerts3D [] |
Mesh generation
| typedef std::map<BryKey_t, Array<NeighDat_t> > Mesh::BryCell_t |
Map: edge/face key => cells sharing this boundary (edge/face)
| typedef boost::tuple<int,int,int,int> Mesh::BryKey_t |
Edge/face key = (left_node,right_node) for edges or (node0,node1,node2) for faces.
| typedef std::map<int,int> Mesh::BryTag_t |
Map: edge/face ID => edge/face tag.
| typedef CGAL::Alpha_shape_2<CGAL_DT_2> Mesh::CGAL_ALPHA_SHAPE_2 |
| typedef CGAL::Alpha_shape_3<CGAL_DT_3> Mesh::CGAL_ALPHA_SHAPE_3 |
| typedef CGAL::Delaunay_triangulation_2<CGAL_K,CGAL_TDS_2> Mesh::CGAL_DT_2 |
| typedef CGAL::Delaunay_triangulation_3<CGAL_K,CGAL_TDS_3> Mesh::CGAL_DT_3 |
| typedef CGAL::Alpha_shape_face_base_2<CGAL_K,CGAL_TF_2> Mesh::CGAL_FB_2 |
| typedef CGAL::Alpha_shape_cell_base_3<CGAL_K> Mesh::CGAL_FB_3 |
| typedef CGAL::Exact_predicates_inexact_constructions_kernel Mesh::CGAL_K |
| typedef CGAL::Triangulation_default_data_structure_2<CGAL_K,CGAL_VB_2,CGAL_FB_2> Mesh::CGAL_TDS_2 |
| typedef CGAL::Triangulation_data_structure_3<CGAL_VB_3,CGAL_FB_3> Mesh::CGAL_TDS_3 |
| typedef CGAL::Triangulation_face_base_2<CGAL_K> Mesh::CGAL_TF_2 |
| typedef CGAL::Alpha_shape_vertex_base_2<CGAL_K> Mesh::CGAL_VB_2 |
| typedef CGAL::Alpha_shape_vertex_base_3<CGAL_K> Mesh::CGAL_VB_3 |
| typedef std::pair<int,Cell*> Mesh::NeighDat_t |
Pair: local edge/face ID, neighbour cell.
| typedef std::map<BryKey_t, NeighDat_t> Mesh::Neighs_t |
Map: edge/face key => neighbour data.
| typedef std::map<Vertex*,Array<Vertex*> > Mesh::Pin_t |
Pin type.
| typedef std::map<int,SDPair> Mesh::Side2Ctr_t |
Side to constraint map.
| typedef tetgenio Mesh::TetIO |
HSI' Tetgen Input/Output structure.
| typedef triangulateio Mesh::TriIO |
JRS' Triangle Input/Output structure.
| int Mesh::CellGetBryTag | ( | int | iSide, |
| Cell const * | c | ||
| ) | [inline] |
| int Mesh::CellGetNeigh | ( | int | iSide, |
| Cell const * | c | ||
| ) | [inline] |
| std::ostream& Mesh::operator<< | ( | std::ostream & | os, |
| BryKey_t const & | BK | ||
| ) |
| std::ostream& Mesh::operator<< | ( | std::ostream & | os, |
| Generic const & | M | ||
| ) |
| std::ostream& Mesh::operator<< | ( | std::ostream & | os, |
| Block const & | B | ||
| ) |
| void Mesh::TriAllocate | ( | int | NPoints, |
| int | NSegments, | ||
| int | NRegions, | ||
| int | NHoles, | ||
| TriIO & | Tio | ||
| ) | [inline] |
| void Mesh::TriDeallocateAll | ( | TriIO & | Tio | ) | [inline] |
| void Mesh::TriSetAllToNull | ( | TriIO & | Tio | ) | [inline] |
| size_t Mesh::MaxNVerts2D = 8 |
| size_t Mesh::MaxNVerts3D = 20 |
| int Mesh::NVertsToEdge2D[][4][3] |
| int Mesh::NVertsToEdge3D[][12][3] |
{
NOEDGES3D,NOEDGES3D,NOEDGES3D,NOEDGES3D,
{{0,1,-1},{1,2,-1},{2,0,-1},{0,3,-1},{1,3,-1},{2,3,-1},NOEDGE,NOEDGE,NOEDGE,NOEDGE,NOEDGE,NOEDGE},
NOEDGES3D,NOEDGES3D,NOEDGES3D,
{{0,1,-1},{1,2,-1},{2,3,-1},{3,0,-1},{4,5,-1},{5,6,-1},{6,7,-1},{7,4,-1},{0,4,-1},{1,5,-1},{2,6,-1},{3,7,-1}},
NOEDGES3D,
{{0,1,4},{1,2,5},{2,0,6},{0,3,7},{1,3,8},{2,3,9},NOEDGE,NOEDGE,NOEDGE,NOEDGE,NOEDGE,NOEDGE},
NOEDGES3D,NOEDGES3D,NOEDGES3D,NOEDGES3D,NOEDGES3D,NOEDGES3D,NOEDGES3D,NOEDGES3D,NOEDGES3D,
{{0,1,8},{1,2,9},{2,3,10},{3,0,11},{4,5,12},{5,6,13},{6,7,14},{7,4,15},{0,4,16},{1,5,17},{2,6,18},{3,7,19}}
}
| int Mesh::NVertsToFace3D[][6][4] |
{
NOFACES,NOFACES,NOFACES,NOFACES,
{{0,3,2,-1},{0,1,3,-1},{0,2,1,-1},{1,2,3,-1},NOFACE,NOFACE},
NOFACES,NOFACES,NOFACES,
{{0,4,7,3},{1,2,6,5},{0,1,5,4},{2,3,7,6},{0,3,2,1},{4,5,6,7}},
NOFACES,
{{0,3,2,-1},{0,1,3,-1},{0,2,1,-1},{1,2,3,-1},NOFACE,NOFACE},
NOFACES,NOFACES,NOFACES,NOFACES,NOFACES,NOFACES,NOFACES,NOFACES,NOFACES,
{{0,4,7,3},{1,2,6,5},{0,1,5,4},{2,3,7,6},{0,3,2,1},{4,5,6,7}}
}
| size_t Mesh::NVertsToGeoNVerts2D[] |
{-1,
-1,
2,
3,
4,
-1,
3,
-1,
4,
-1,-1,-1,-1,-1,-1,
3}
| size_t Mesh::NVertsToGeoNVerts3D[] |
{-1,
-1,
2,
-1,
4,
-1,
-1,
-1,
8,
-1,
4,
-1,-1,-1,-1,-1,-1,-1,-1,-1,
8}
| size_t Mesh::NVertsToNEdges2D[] = {0,0,0,3,4,0,3,0,4} |
| size_t Mesh::NVertsToNEdges3D[] = {0,0,0,0, 6, 0,0,0, 12, 0, 6, 0,0,0,0,0,0,0,0,0, 12} |
| size_t Mesh::NVertsToNFaces3D[] = {0,0,0,0, 4, 0,0,0, 6, 0, 4, 0,0,0,0,0,0,0,0,0, 6} |
| size_t Mesh::NVertsToNVertsPerEdge2D[] = {0,0,0,2,2,0,3,0,3} |
| size_t Mesh::NVertsToNVertsPerFace3D[] = {0,0,0,0, 3, 0,0,0, 4, 0, 3, 0,0,0,0,0,0,0,0,0, 4} |
1.7.6.1