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

Protected Attributes

Base::Vector3f basepoint
 
PlaneFitfitter
 
std::vector< FacetIndex > & 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,
FacetIndex  index,
float  deviation,
std::vector< FacetIndex > &  indices 
)

◆ ~MeshPlaneVisitor()

MeshPlaneVisitor::~MeshPlaneVisitor ( )
virtual

References fitter.

Member Function Documentation

◆ AllowVisit()

bool MeshPlaneVisitor::AllowVisit ( const MeshFacet rclFacet,
const MeshFacet rclFrom,
FacetIndex  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.

◆ Visit()

bool MeshPlaneVisitor::Visit ( const MeshFacet rclFacet,
const MeshFacet rclFrom,
FacetIndex  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.

Member Data Documentation

◆ basepoint

◆ fitter

PlaneFit* MeshCore::MeshPlaneVisitor::fitter
protected

◆ indices

std::vector<FacetIndex>& MeshCore::MeshPlaneVisitor::indices
protected

◆ max_deviation

float MeshCore::MeshPlaneVisitor::max_deviation
protected

Referenced by AllowVisit().

◆ mesh

◆ normal


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