MeshCore::MeshComponents Class Reference

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< FacetIndex > &aSegment, std::vector< std::vector< FacetIndex > > &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< FacetIndex > > &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.

Author
Werner Mayer

Member Enumeration Documentation

◆ TMode

Enumerator
OverEdge 
OverPoint 

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

See also http://max-limper.de/publications/Euler/

◆ ~MeshComponents()

MeshComponents::~MeshComponents ( )

Member Function Documentation

◆ SearchForComponents() [1/2]

void MeshComponents::SearchForComponents ( TMode  tMode,
const std::vector< FacetIndex > &  aSegment,
std::vector< std::vector< FacetIndex > > &  aclT 
) const

Does basically the same as the method above escept that only the faces in aSegment are regarded.

References MeshCore::MeshAlgorithm::CountFacetFlag(), MeshCore::FACET_INDEX_MAX, OverEdge, OverPoint, MeshCore::MeshAlgorithm::ResetFacetsFlag(), MeshCore::MeshAlgorithm::SetFacetFlag(), and MeshCore::MeshFacet::VISIT.

◆ SearchForComponents() [2/2]

void MeshComponents::SearchForComponents ( TMode  tMode,
std::vector< std::vector< FacetIndex > > &  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.

References SearchForComponents().

Referenced by Mesh::MeshObject::countComponents(), MeshGui::MeshSelection::deselectComponent(), MeshCore::MeshTopoAlgorithm::FindComponents(), Mesh::MeshObject::getComponents(), SearchForComponents(), and MeshGui::MeshSelection::selectComponent().


The documentation for this class was generated from the following files: