The MeshComponents class searches for topologic independent segments of the given mesh structure. More...
#include <TopoAlgorithm.h>
Classes | |
struct | CNofFacetsCompare |
Public Types | |
enum | TMode { OverEdge, OverPoint } |
Public Member Functions | |
MeshComponents (const MeshKernel &rclMesh) | |
Some important formulas: More... | |
void | SearchForComponents (TMode tMode, const std::vector< unsigned long > &aSegment, std::vector< std::vector< unsigned long > > &aclT) const |
Does basically the same as the method above escept that only the faces in aSegment are regarded. More... | |
void | SearchForComponents (TMode tMode, std::vector< std::vector< unsigned long > > &aclT) const |
Searches for 'isles' of the mesh. More... | |
~MeshComponents () | |
Detailed Description
The MeshComponents class searches for topologic independent segments of the given mesh structure.
Member Enumeration Documentation
◆ TMode
Constructor & Destructor Documentation
◆ MeshComponents()
MeshComponents::MeshComponents | ( | const MeshKernel & | rclMesh | ) |
Some important formulas:
Ne = 3Nv - Nb + 3B + 6(G-R) Nt = 2Nv - Nb + 2B + 4(G-R)
Ne <= 3Nv + 6(G-R) Nt <= 2Nv + 4(G-R)
Ne ~ 3Nv, Nv >> G, Nv >> R Nt ~ 2Nv, Nv >> G, Nv >> R
Ne = #Edges Nt = #Facets Nv = #Vertices Nb = #Boundary vertices B = #Boundaries G = Genus (Number of holes) R = #components
◆ ~MeshComponents()
MeshComponents::~MeshComponents | ( | ) |
Member Function Documentation
◆ SearchForComponents() [1/2]
void MeshComponents::SearchForComponents | ( | TMode | tMode, |
const std::vector< unsigned long > & | aSegment, | ||
std::vector< std::vector< unsigned long > > & | aclT | ||
) | const |
Does basically the same as the method above escept that only the faces in aSegment are regarded.
References MeshCore::MeshAlgorithm::CountFacetFlag(), OverEdge, OverPoint, MeshCore::MeshAlgorithm::ResetFacetsFlag(), MeshCore::MeshAlgorithm::SetFacetFlag(), and MeshCore::MeshFacet::VISIT.
◆ SearchForComponents() [2/2]
void MeshComponents::SearchForComponents | ( | TMode | tMode, |
std::vector< std::vector< unsigned long > > & | aclT | ||
) | const |
Searches for 'isles' of the mesh.
If tMode is OverEdge then facets sharing the same edge are regarded as connected, if tMode is OverPoint then facets sharing a common point are regarded as connected.
Referenced by Mesh::MeshObject::countComponents(), MeshGui::MeshSelection::deselectComponent(), MeshCore::MeshTopoAlgorithm::FindComponents(), Mesh::MeshObject::getComponents(), and MeshGui::MeshSelection::selectComponent().
The documentation for this class was generated from the following files:
- src/Mod/Mesh/App/Core/TopoAlgorithm.h
- src/Mod/Mesh/App/Core/TopoAlgorithm.cpp