MeshCore::MeshEvalPointManifolds Class Reference

The MeshEvalPointManifolds class checks for non-manifold points. More...

#include <Evaluation.h>

Public Member Functions

unsigned long CountManifolds () const
 
virtual bool Evaluate ()
 Evaluates the mesh kernel with respect to certain criteria. More...
 
const std::list< std::vector< FacetIndex > > & GetFacetIndices () const
 
void GetFacetIndices (std::vector< FacetIndex > &facets) const
 
const std::vector< FacetIndex > & GetIndices () const
 
 MeshEvalPointManifolds (const MeshKernel &rclB)
 
virtual ~MeshEvalPointManifolds ()
 
- Public Member Functions inherited from MeshCore::MeshEvaluation
virtual bool Evaluate ()=0
 Evaluates the mesh kernel with respect to certain criteria. More...
 
 MeshEvaluation (const MeshKernel &rclB)
 
virtual ~MeshEvaluation ()
 

Protected Attributes

std::list< std::vector< FacetIndex > > facetsOfNonManifoldPoints
 
std::vector< FacetIndexnonManifoldPoints
 

Detailed Description

The MeshEvalPointManifolds class checks for non-manifold points.

A point is considered non-manifold if two sets of triangles share the point but are not topologically connected over a common edge. Such mesh defects can lead to some very ugly folds on the surface.

Constructor & Destructor Documentation

◆ MeshEvalPointManifolds()

MeshCore::MeshEvalPointManifolds::MeshEvalPointManifolds ( const MeshKernel rclB)

◆ ~MeshEvalPointManifolds()

virtual MeshCore::MeshEvalPointManifolds::~MeshEvalPointManifolds ( )
virtual

Member Function Documentation

◆ CountManifolds()

unsigned long MeshCore::MeshEvalPointManifolds::CountManifolds ( ) const

◆ Evaluate()

bool MeshEvalPointManifolds::Evaluate ( )
virtual

Evaluates the mesh kernel with respect to certain criteria.

Must be reimplemented by every subclass. This pure virtual function returns false if the mesh kernel is invalid according to this criterion and true if the mesh kernel is correct.

Implements MeshCore::MeshEvaluation.

References facetsOfNonManifoldPoints, and nonManifoldPoints.

Referenced by MeshGui::DlgEvaluateMeshImp::on_analyzeNonmanifoldsButton_clicked(), and Mesh::MeshObject::removeNonManifoldPoints().

◆ GetFacetIndices() [1/2]

const std::list< std::vector< FacetIndex > > & MeshCore::MeshEvalPointManifolds::GetFacetIndices ( ) const

◆ GetFacetIndices() [2/2]

void MeshEvalPointManifolds::GetFacetIndices ( std::vector< FacetIndex > &  facets) const

◆ GetIndices()

const std::vector< FacetIndex > & MeshCore::MeshEvalPointManifolds::GetIndices ( ) const

Member Data Documentation

◆ facetsOfNonManifoldPoints

std::list<std::vector<FacetIndex> > MeshCore::MeshEvalPointManifolds::facetsOfNonManifoldPoints
protected

Referenced by Evaluate(), and GetFacetIndices().

◆ nonManifoldPoints

std::vector<FacetIndex> MeshCore::MeshEvalPointManifolds::nonManifoldPoints
protected

Referenced by Evaluate().


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