MeshCore::MeshEvalTopology Class Reference

The MeshEvalTopology class checks for topologic correctness, i.e that the mesh must not contain non-manifolds. More...

#include <Evaluation.h>

Public Member Functions

unsigned long CountManifolds () const
 
virtual bool Evaluate ()
 Evaluates the mesh kernel with respect to certain criteria. More...
 
void GetFacetManifolds (std::vector< unsigned long > &raclFacetIndList) const
 
const std::list< std::vector< unsigned long > > & GetFacets () const
 
const std::vector< std::pair< unsigned long, unsigned long > > & GetIndices () const
 
 MeshEvalTopology (const MeshKernel &rclB)
 
virtual ~MeshEvalTopology ()
 
- Public Member Functions inherited from MeshCore::MeshEvaluation
 MeshEvaluation (const MeshKernel &rclB)
 
virtual ~MeshEvaluation ()
 

Protected Attributes

std::list< std::vector< unsigned long > > nonManifoldFacets
 
std::vector< std::pair< unsigned long, unsigned long > > nonManifoldList
 

Detailed Description

The MeshEvalTopology class checks for topologic correctness, i.e that the mesh must not contain non-manifolds.

E.g. an edge is regarded as non-manifold if it is shared by more than two facets.

Note
This check does not necessarily cover any degenerations.

Constructor & Destructor Documentation

◆ MeshEvalTopology()

MeshCore::MeshEvalTopology::MeshEvalTopology ( const MeshKernel rclB)

◆ ~MeshEvalTopology()

virtual MeshCore::MeshEvalTopology::~MeshEvalTopology ( )
virtual

Member Function Documentation

◆ CountManifolds()

unsigned long MeshEvalTopology::CountManifolds ( ) const

◆ Evaluate()

bool MeshEvalTopology::Evaluate ( )
virtual

◆ GetFacetManifolds()

void MeshEvalTopology::GetFacetManifolds ( std::vector< unsigned long > &  raclFacetIndList) const

◆ GetFacets()

const std::list<std::vector<unsigned long> >& MeshCore::MeshEvalTopology::GetFacets ( ) const

◆ GetIndices()

const std::vector<std::pair<unsigned long, unsigned long> >& MeshCore::MeshEvalTopology::GetIndices ( ) const

Member Data Documentation

◆ nonManifoldFacets

std::list<std::vector<unsigned long> > MeshCore::MeshEvalTopology::nonManifoldFacets
protected

Referenced by Evaluate().

◆ nonManifoldList

std::vector<std::pair<unsigned long, unsigned long> > MeshCore::MeshEvalTopology::nonManifoldList
protected

The documentation for this class was generated from the following files:
  • Sources/FreeCAD/src/Mod/Mesh/App/Core/Evaluation.h
  • Sources/FreeCAD/src/Mod/Mesh/App/Core/Evaluation.cpp