MeshCore::MeshPlaneVisitor Class Reference

The MeshPlaneVisitor collects all facets the are co-planar to the plane defined by the start triangle. More...

#include <Visitor.h>

Public Member Functions

bool AllowVisit (const MeshFacet &face, const MeshFacet &, unsigned long, unsigned long, unsigned short neighbourIndex)
 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. More...
 
 MeshPlaneVisitor (const MeshKernel &mesh, unsigned long index, float deviation, std::vector< unsigned long > &indices)
 
bool Visit (const MeshFacet &face, const MeshFacet &, unsigned long ulFInd, unsigned long)
 Needs to be implemented in sub-classes. More...
 
virtual ~MeshPlaneVisitor ()
 
- Public Member Functions inherited from MeshCore::MeshFacetVisitor
 MeshFacetVisitor (void)
 Construction. More...
 
virtual ~MeshFacetVisitor (void)
 Denstruction. More...
 

Protected Attributes

Base::Vector3f basepoint
 
PlaneFitfitter
 
std::vector< unsigned long > & indices
 
float max_deviation
 
const MeshKernelmesh
 
Base::Vector3f normal
 

Detailed Description

The MeshPlaneVisitor collects all facets the are co-planar to the plane defined by the start triangle.

Constructor & Destructor Documentation

◆ MeshPlaneVisitor()

MeshPlaneVisitor::MeshPlaneVisitor ( const MeshKernel mesh,
unsigned long  index,
float  deviation,
std::vector< unsigned long > &  indices 
)

◆ ~MeshPlaneVisitor()

MeshPlaneVisitor::~MeshPlaneVisitor ( )
virtual

References fitter.

Referenced by MeshCore::MeshTopFacetVisitor::Visit().

Member Function Documentation

◆ AllowVisit()

bool MeshPlaneVisitor::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.

Reimplemented from MeshCore::MeshFacetVisitor.

References MeshCore::Approximation::Done(), MeshCore::PlaneFit::Fit(), fitter, MeshCore::PlaneFit::GetDistanceToPlane(), MeshCore::MeshKernel::GetFacet(), max_deviation, and mesh.

Referenced by MeshCore::MeshTopFacetVisitor::Visit().

◆ Visit()

bool MeshPlaneVisitor::Visit ( const MeshFacet rclFacet,
const MeshFacet rclFrom,
unsigned long  ulFInd,
unsigned long  ulLevel 
)
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.

Implements MeshCore::MeshFacetVisitor.

References MeshCore::Approximation::AddPoint(), fitter, MeshCore::MeshKernel::GetFacet(), and mesh.

Referenced by MeshCore::MeshTopFacetVisitor::Visit().

Member Data Documentation

◆ basepoint

Base::Vector3f MeshCore::MeshPlaneVisitor::basepoint
protected

◆ fitter

PlaneFit* MeshCore::MeshPlaneVisitor::fitter
protected

◆ indices

std::vector<unsigned long>& MeshCore::MeshPlaneVisitor::indices
protected

◆ max_deviation

float MeshCore::MeshPlaneVisitor::max_deviation
protected

◆ mesh

const MeshKernel& MeshCore::MeshPlaneVisitor::mesh
protected

◆ normal

Base::Vector3f MeshCore::MeshPlaneVisitor::normal
protected

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