Open CASCADE Technology  7.5.0
Data Structures | Public Member Functions | Protected Member Functions
BRepMesh_DelaunayDeflectionControlMeshAlgo< RangeSplitter, BaseAlgo > Class Template Reference

Extends node insertion Delaunay meshing algo in order to control deflection of generated trianges. Splits triangles failing the check. More...

#include <BRepMesh_DelaunayDeflectionControlMeshAlgo.hxx>

Inheritance diagram for BRepMesh_DelaunayDeflectionControlMeshAlgo< RangeSplitter, BaseAlgo >:
Inheritance graph
[legend]

Public Member Functions

 BRepMesh_DelaunayDeflectionControlMeshAlgo ()
 Constructor. More...
 
virtual ~BRepMesh_DelaunayDeflectionControlMeshAlgo ()
 Destructor. More...
 
- Public Member Functions inherited from BRepMesh_DelaunayNodeInsertionMeshAlgo< RangeSplitter, BaseAlgo >
 BRepMesh_DelaunayNodeInsertionMeshAlgo ()
 Constructor. More...
 
virtual ~BRepMesh_DelaunayNodeInsertionMeshAlgo ()
 Destructor. More...
 
Standard_Boolean IsPreProcessSurfaceNodes () const
 Returns PreProcessSurfaceNodes flag. More...
 
void SetPreProcessSurfaceNodes (const Standard_Boolean isPreProcessSurfaceNodes)
 Sets PreProcessSurfaceNodes flag. If TRUE, registers surface nodes before generation of base mesh. If FALSE, inserts surface nodes after generation of base mesh. More...
 
- Public Member Functions inherited from BRepMesh_NodeInsertionMeshAlgo< RangeSplitter, BaseAlgo >
 BRepMesh_NodeInsertionMeshAlgo ()
 Constructor. More...
 
virtual ~BRepMesh_NodeInsertionMeshAlgo ()
 Destructor. More...
 
virtual void Perform (const IMeshData::IFaceHandle &theDFace, const IMeshTools_Parameters &theParameters, const Message_ProgressRange &theRange) override
 Performs processing of the given face. More...
 

Protected Member Functions

virtual void postProcessMesh (BRepMesh_Delaun &theMesher, const Message_ProgressRange &theRange) override
 Performs processing of generated mesh. Generates surface nodes and inserts them into structure. More...
 
virtual void optimizeMesh (BRepMesh_Delaun &theMesher, const Message_ProgressRange &theRange)
 Checks deviation of a mesh from geometrical surface. Inserts additional nodes in case of huge deviation. More...
 
- Protected Member Functions inherited from BRepMesh_DelaunayNodeInsertionMeshAlgo< RangeSplitter, BaseAlgo >
virtual Standard_Boolean initDataStructure () override
 Performs initialization of data structure using existing model data. More...
 
virtual std::pair< Standard_Integer, Standard_IntegergetCellsCount (const Standard_Integer theVerticesNb) override
 Returns size of cell to be used by acceleration circles grid structure. More...
 
Standard_Boolean insertNodes (const Handle< IMeshData::ListOfPnt2d > &theNodes, BRepMesh_Delaun &theMesher, const Message_ProgressRange &theRange)
 Inserts nodes into mesh. More...
 
- Protected Member Functions inherited from BRepMesh_NodeInsertionMeshAlgo< RangeSplitter, BaseAlgo >
virtual Standard_Integer addNodeToStructure (const gp_Pnt2d &thePoint, const Standard_Integer theLocation3d, const BRepMesh_DegreeOfFreedom theMovability, const Standard_Boolean isForceAdd) override
 Adds the given 2d point to mesh data structure. Returns index of node in the structure. More...
 
virtual gp_Pnt2d getNodePoint2d (const BRepMesh_Vertex &theVertex) const override
 Returns 2d point associated to the given vertex. More...
 
const RangeSplitter & getRangeSplitter () const
 Returns range splitter. More...
 
const Handle< BRepMesh_Classifier > & getClassifier () const
 Returns classifier. More...
 

Additional Inherited Members

- Protected Types inherited from BRepMesh_NodeInsertionMeshAlgo< RangeSplitter, BaseAlgo >
typedef NCollection_Shared< NCollection_Sequence< const gp_Pnt2d * > > SequenceOfPnt2d
 

Detailed Description

template<class RangeSplitter, class BaseAlgo>
class BRepMesh_DelaunayDeflectionControlMeshAlgo< RangeSplitter, BaseAlgo >

Extends node insertion Delaunay meshing algo in order to control deflection of generated trianges. Splits triangles failing the check.

Constructor & Destructor Documentation

◆ BRepMesh_DelaunayDeflectionControlMeshAlgo()

template<class RangeSplitter , class BaseAlgo >
BRepMesh_DelaunayDeflectionControlMeshAlgo< RangeSplitter, BaseAlgo >::BRepMesh_DelaunayDeflectionControlMeshAlgo ( )
inline

Constructor.

◆ ~BRepMesh_DelaunayDeflectionControlMeshAlgo()

template<class RangeSplitter , class BaseAlgo >
virtual BRepMesh_DelaunayDeflectionControlMeshAlgo< RangeSplitter, BaseAlgo >::~BRepMesh_DelaunayDeflectionControlMeshAlgo ( )
inlinevirtual

Destructor.

Member Function Documentation

◆ optimizeMesh()

template<class RangeSplitter , class BaseAlgo >
virtual void BRepMesh_DelaunayDeflectionControlMeshAlgo< RangeSplitter, BaseAlgo >::optimizeMesh ( BRepMesh_Delaun theMesher,
const Message_ProgressRange theRange 
)
inlineprotectedvirtual

Checks deviation of a mesh from geometrical surface. Inserts additional nodes in case of huge deviation.

◆ postProcessMesh()

template<class RangeSplitter , class BaseAlgo >
virtual void BRepMesh_DelaunayDeflectionControlMeshAlgo< RangeSplitter, BaseAlgo >::postProcessMesh ( BRepMesh_Delaun theMesher,
const Message_ProgressRange theRange 
)
inlineoverrideprotectedvirtual

Performs processing of generated mesh. Generates surface nodes and inserts them into structure.

Reimplemented from BRepMesh_DelaunayNodeInsertionMeshAlgo< RangeSplitter, BaseAlgo >.


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