FreeCAD C++
Public Member Functions | List of all members
MeshCore::MeshFacetVisitor Class Referenceabstract

#include <Mod/Mesh/App/Core/Visitor.h>

Detailed Description

Abstract base class for facet visitors. The MeshFacetVisitor class can be used for the so called "Region growing" algorithms.

Public Member Functions

 MeshFacetVisitor (void)
 Construction.
 
virtual ~MeshFacetVisitor (void)
 Denstruction.
 
virtual bool Visit (const MeshFacet &rclFacet, const MeshFacet &rclFrom, unsigned long ulFInd, unsigned long ulLevel)=0
 
virtual bool AllowVisit (const MeshFacet &rclFacet, const MeshFacet &rclFrom, unsigned long ulFInd, unsigned long ulLevel, unsigned short neighbourIndex)
 

Member Function Documentation

◆ AllowVisit()

virtual bool MeshCore::MeshFacetVisitor::AllowVisit ( const MeshFacet rclFacet,
const MeshFacet rclFrom,
unsigned long  ulFInd,
unsigned long  ulLevel,
unsigned short  neighbourIndex 
)
virtual

Test before a facet will be flagged as VISIT, return false means: go on with visiting the facets but not this one and set not the VISIT flag

◆ Visit()

virtual bool MeshCore::MeshFacetVisitor::Visit ( const MeshFacet rclFacet,
const MeshFacet rclFrom,
unsigned long  ulFInd,
unsigned long  ulLevel 
)
pure virtual

Needs to be implemented in sub-classes. rclFacet is the currently visited facet with the index ulFInd, rclFrom is the last visited facet and ulLevel indicates the ring number around the start facet. If true is returned the next iteration is done if there are still facets to visit. If false is returned the calling method stops immediately visiting further facets.

Implemented in MeshCore::MeshSameOrientationCollector, MeshCore::MeshTopFacetVisitor, MeshCore::MeshOrientationCollector, MeshCore::MeshOrientationVisitor, and MeshCore::MeshSearchNeighbourFacetsVisitor.