Open CASCADE Technology 7.8.2.dev
BRepMesh_BaseMeshAlgo Class Referenceabstract

Class provides base functionality for algorithms building face triangulation. Performs initialization of BRepMesh_DataStructureOfDelaun and nodes map structures. More...

#include <BRepMesh_BaseMeshAlgo.hxx>

Inheritance diagram for BRepMesh_BaseMeshAlgo:

Public Types

typedef NCollection_Shared< NCollection_Vector< gp_Pnt > > VectorOfPnt
 
- Public Types inherited from Standard_Transient
typedef void base_type
 Returns a type descriptor about this object.
 

Public Member Functions

 BRepMesh_BaseMeshAlgo ()
 Constructor.
 
virtual ~BRepMesh_BaseMeshAlgo ()
 Destructor.
 
virtual void Perform (const IMeshData::IFaceHandle &theDFace, const IMeshTools_Parameters &theParameters, const Message_ProgressRange &theRange=Message_ProgressRange()) override
 Performs processing of the given face.
 
- Public Member Functions inherited from IMeshTools_MeshAlgo
virtual ~IMeshTools_MeshAlgo ()
 Destructor.
 
- Public Member Functions inherited from Standard_Transient
 Standard_Transient ()
 Empty constructor.
 
 Standard_Transient (const Standard_Transient &)
 Copy constructor – does nothing.
 
Standard_Transientoperator= (const Standard_Transient &)
 Assignment operator, needed to avoid copying reference counter.
 
virtual ~Standard_Transient ()
 Destructor must be virtual.
 
virtual const opencascade::handle< Standard_Type > & DynamicType () const
 Returns a type descriptor about this object.
 
Standard_Boolean IsInstance (const opencascade::handle< Standard_Type > &theType) const
 Returns a true value if this is an instance of Type.
 
Standard_Boolean IsInstance (const Standard_CString theTypeName) const
 Returns a true value if this is an instance of TypeName.
 
Standard_Boolean IsKind (const opencascade::handle< Standard_Type > &theType) const
 Returns true if this is an instance of Type or an instance of any class that inherits from Type. Note that multiple inheritance is not supported by OCCT RTTI mechanism.
 
Standard_Boolean IsKind (const Standard_CString theTypeName) const
 Returns true if this is an instance of TypeName or an instance of any class that inherits from TypeName. Note that multiple inheritance is not supported by OCCT RTTI mechanism.
 
Standard_TransientThis () const
 Returns non-const pointer to this object (like const_cast). For protection against creating handle to objects allocated in stack or call from constructor, it will raise exception Standard_ProgramError if reference counter is zero.
 
Standard_Integer GetRefCount () const noexcept
 Get the reference counter of this object.
 
void IncrementRefCounter () noexcept
 Increments the reference counter of this object.
 
Standard_Integer DecrementRefCounter () noexcept
 Decrements the reference counter of this object; returns the decremented value.
 
virtual void Delete () const
 Memory deallocator for transient classes.
 

Protected Member Functions

const IMeshData::IFaceHandlegetDFace () const
 Gets discrete face.
 
const IMeshTools_ParametersgetParameters () const
 Gets meshing parameters.
 
const Handle< NCollection_IncAllocator > & getAllocator () const
 Gets common allocator.
 
const Handle< BRepMesh_DataStructureOfDelaun > & getStructure () const
 Gets mesh structure.
 
const Handle< VectorOfPnt > & getNodesMap () const
 Gets 3d nodes map.
 
virtual Standard_Integer registerNode (const gp_Pnt &thePoint, const gp_Pnt2d &thePoint2d, const BRepMesh_DegreeOfFreedom theMovability, const Standard_Boolean isForceAdd)
 Registers the given point in vertex map and adds 2d point to mesh data structure. Returns index of node in the structure.
 
virtual Standard_Integer addNodeToStructure (const gp_Pnt2d &thePoint, const Standard_Integer theLocation3d, const BRepMesh_DegreeOfFreedom theMovability, const Standard_Boolean isForceAdd)
 Adds the given 2d point to mesh data structure. Returns index of node in the structure.
 
virtual gp_Pnt2d getNodePoint2d (const BRepMesh_Vertex &theVertex) const
 Returns 2d point associated to the given vertex.
 
virtual Standard_Boolean initDataStructure ()
 Performs initialization of data structure using existing model data.
 
virtual void generateMesh (const Message_ProgressRange &theRange)=0
 Generates mesh for the contour stored in data structure.
 
- Protected Member Functions inherited from IMeshTools_MeshAlgo
 IMeshTools_MeshAlgo ()
 Constructor.
 

Additional Inherited Members

- Static Public Member Functions inherited from Standard_Transient
static constexpr const char * get_type_name ()
 Returns a type descriptor about this object.
 
static const opencascade::handle< Standard_Type > & get_type_descriptor ()
 Returns type descriptor of Standard_Transient class.
 

Detailed Description

Class provides base functionality for algorithms building face triangulation. Performs initialization of BRepMesh_DataStructureOfDelaun and nodes map structures.

Member Typedef Documentation

◆ VectorOfPnt

Constructor & Destructor Documentation

◆ BRepMesh_BaseMeshAlgo()

BRepMesh_BaseMeshAlgo::BRepMesh_BaseMeshAlgo ( )

Constructor.

◆ ~BRepMesh_BaseMeshAlgo()

virtual BRepMesh_BaseMeshAlgo::~BRepMesh_BaseMeshAlgo ( )
virtual

Destructor.

Member Function Documentation

◆ addNodeToStructure()

virtual Standard_Integer BRepMesh_BaseMeshAlgo::addNodeToStructure ( const gp_Pnt2d & thePoint,
const Standard_Integer theLocation3d,
const BRepMesh_DegreeOfFreedom theMovability,
const Standard_Boolean isForceAdd )
protectedvirtual

Adds the given 2d point to mesh data structure. Returns index of node in the structure.

◆ generateMesh()

virtual void BRepMesh_BaseMeshAlgo::generateMesh ( const Message_ProgressRange & theRange)
protectedpure virtual

Generates mesh for the contour stored in data structure.

Implemented in BRepMesh_CustomBaseMeshAlgo, and BRepMesh_DelaunayBaseMeshAlgo.

◆ getAllocator()

const Handle< NCollection_IncAllocator > & BRepMesh_BaseMeshAlgo::getAllocator ( ) const
inlineprotected

Gets common allocator.

◆ getDFace()

const IMeshData::IFaceHandle & BRepMesh_BaseMeshAlgo::getDFace ( ) const
inlineprotected

Gets discrete face.

◆ getNodePoint2d()

virtual gp_Pnt2d BRepMesh_BaseMeshAlgo::getNodePoint2d ( const BRepMesh_Vertex & theVertex) const
protectedvirtual

Returns 2d point associated to the given vertex.

◆ getNodesMap()

const Handle< VectorOfPnt > & BRepMesh_BaseMeshAlgo::getNodesMap ( ) const
inlineprotected

Gets 3d nodes map.

◆ getParameters()

const IMeshTools_Parameters & BRepMesh_BaseMeshAlgo::getParameters ( ) const
inlineprotected

Gets meshing parameters.

◆ getStructure()

const Handle< BRepMesh_DataStructureOfDelaun > & BRepMesh_BaseMeshAlgo::getStructure ( ) const
inlineprotected

Gets mesh structure.

◆ initDataStructure()

virtual Standard_Boolean BRepMesh_BaseMeshAlgo::initDataStructure ( )
protectedvirtual

Performs initialization of data structure using existing model data.

◆ Perform()

virtual void BRepMesh_BaseMeshAlgo::Perform ( const IMeshData::IFaceHandle & theDFace,
const IMeshTools_Parameters & theParameters,
const Message_ProgressRange & theRange = Message_ProgressRange() )
overridevirtual

Performs processing of the given face.

Implements IMeshTools_MeshAlgo.

◆ registerNode()

virtual Standard_Integer BRepMesh_BaseMeshAlgo::registerNode ( const gp_Pnt & thePoint,
const gp_Pnt2d & thePoint2d,
const BRepMesh_DegreeOfFreedom theMovability,
const Standard_Boolean isForceAdd )
protectedvirtual

Registers the given point in vertex map and adds 2d point to mesh data structure. Returns index of node in the structure.


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