OCCT3D OCCT 8.0.1
OCCT documentation

Search guides and API reference

Enter at least two characters.

    Open CASCADE Technology Reference Manual 8.0.1
    BRepMesh_DataStructureOfDelaun Class Reference

    Describes the data structure necessary for the mesh algorithms in two dimensions plane or on surface by meshing in UV space. More...

    #include <BRepMesh_DataStructureOfDelaun.hxx>

    Inheritance diagram for BRepMesh_DataStructureOfDelaun:

    Public Member Functions

     BRepMesh_DataStructureOfDelaun (const occ::handle< NCollection_IncAllocator > &theAllocator, const int theReservedNodeSize=100)
     Constructor.
    API for accessing mesh nodes.

    Returns number of nodes.

    int NbNodes () const
     Adds node to the mesh if it is not already in the mesh.
    int AddNode (const BRepMesh_Vertex &theNode, const bool isForceAdd=false)
     Adds node to the mesh if it is not already in the mesh.
    int IndexOf (const BRepMesh_Vertex &theNode)
     Finds the index of the given node.
    const BRepMesh_VertexGetNode (const int theIndex)
     Get node by the index.
    const BRepMesh_Vertexoperator() (const int theIndex)
     Alias for GetNode.
    bool SubstituteNode (const int theIndex, const BRepMesh_Vertex &theNewNode)
     Substitutes the node with the given index by new one.
    void RemoveNode (const int theIndex, const bool isForce=false)
     Removes node from the mesh in case if it has no connected links and its type is Free.
    const IMeshData::ListOfIntegerLinksConnectedTo (const int theIndex) const
     Get list of links attached to the node with the given index.
    API for accessing mesh links.

    Returns number of links.

    int NbLinks () const
     Adds link to the mesh if it is not already in the mesh.
    int AddLink (const BRepMesh_Edge &theLink)
     Adds link to the mesh if it is not already in the mesh.
    int IndexOf (const BRepMesh_Edge &theLink) const
     Finds the index of the given link.
    const BRepMesh_EdgeGetLink (const int theIndex)
     Get link by the index.
    const IMeshData::MapOfIntegerLinksOfDomain () const
     Returns map of indices of links registered in mesh.
    bool SubstituteLink (const int theIndex, const BRepMesh_Edge &theNewLink)
     Substitutes the link with the given index by new one.
    void RemoveLink (const int theIndex, const bool isForce=false)
     Removes link from the mesh in case if it has no connected elements and its type is Free.
    const BRepMesh_PairOfIndexElementsConnectedTo (const int theLinkIndex) const
     Returns indices of elements connected to the link with the given index.
    API for accessing mesh elements.

    Returns number of links.

    int NbElements () const
     Adds element to the mesh if it is not already in the mesh.
    int AddElement (const BRepMesh_Triangle &theElement)
     Adds element to the mesh if it is not already in the mesh.
    const BRepMesh_TriangleGetElement (const int theIndex)
     Get element by the index.
    const IMeshData::MapOfIntegerElementsOfDomain () const
     Returns map of indices of elements registered in mesh.
    bool SubstituteElement (const int theIndex, const BRepMesh_Triangle &theNewElement)
     Substitutes the element with the given index by new one.
    void RemoveElement (const int theIndex)
     Removes element from the mesh.
    void ElementNodes (const BRepMesh_Triangle &theElement, int(&theNodes)[3])
     Returns indices of nodes forming the given element.
    void Dump (const char *theFileNameStr)
     Adds element to the mesh if it is not already in the mesh.
    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 ()=default
     Destructor must be virtual.
    virtual const opencascade::handle< Standard_Type > & DynamicType () const
     Returns a type descriptor about this object.
    bool IsInstance (const opencascade::handle< Standard_Type > &theType) const
     Returns a true value if this is an instance of Type.
    bool IsInstance (const char *const theTypeName) const
     Returns a true value if this is an instance of TypeName.
    bool 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.
    bool IsKind (const char *const 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.
    int GetRefCount () const noexcept
     Get the reference counter of this object.
    void IncrementRefCounter () noexcept
     Increments the reference counter of this object. Uses relaxed memory ordering since incrementing only requires atomicity, not synchronization with other memory operations.
    int DecrementRefCounter () noexcept
     Decrements the reference counter of this object; returns the decremented value. Uses release ordering for the decrement to ensure all writes to the object are visible before the count reaches zero. An acquire fence is added only when the count reaches zero, ensuring proper synchronization before deletion. This is more efficient than using acq_rel for every decrement.
    virtual void Delete () const
     Memory deallocator for transient classes.

    Auxiliary API

    Returns memory allocator used by the structure.

    const occ::handle< NCollection_IncAllocator > & Allocator () const
     Gives the data structure for initialization of cell size and tolerance.
    const occ::handle< BRepMesh_VertexTool > & Data ()
     Gives the data structure for initialization of cell size and tolerance.
    void ClearDomain ()
     Removes all elements.
    void ClearDeleted ()
     Substitutes deleted items by the last one from corresponding map to have only non-deleted elements, links or nodes in the structure.

    Additional Inherited Members

    typedef void base_type
     Returns a type descriptor about this object.
    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

    Describes the data structure necessary for the mesh algorithms in two dimensions plane or on surface by meshing in UV space.

    Constructor & Destructor Documentation

    ◆ BRepMesh_DataStructureOfDelaun()

    BRepMesh_DataStructureOfDelaun::BRepMesh_DataStructureOfDelaun ( const occ::handle< NCollection_IncAllocator > & theAllocator,
    const int theReservedNodeSize = 100 )

    Constructor.

    Parameters
    theAllocatormemory allocator to be used by internal structures.
    theReservedNodeSizepresumed number of nodes in this mesh.

    Member Function Documentation

    ◆ AddElement()

    int BRepMesh_DataStructureOfDelaun::AddElement ( const BRepMesh_Triangle & theElement)

    Adds element to the mesh if it is not already in the mesh.

    Parameters
    theElementelement to be added to the mesh.
    Returns
    index of the element in the structure.

    ◆ AddLink()

    int BRepMesh_DataStructureOfDelaun::AddLink ( const BRepMesh_Edge & theLink)

    Adds link to the mesh if it is not already in the mesh.

    Parameters
    theLinklink to be added to the mesh.
    Returns
    index of the link in the structure.

    ◆ AddNode()

    int BRepMesh_DataStructureOfDelaun::AddNode ( const BRepMesh_Vertex & theNode,
    const bool isForceAdd = false )

    Adds node to the mesh if it is not already in the mesh.

    Parameters
    theNodenode to be added to the mesh.
    isForceAddadds the given node to structure without checking on coincidence with other nodes.
    Returns
    index of the node in the structure.

    ◆ Allocator()

    const occ::handle< NCollection_IncAllocator > & BRepMesh_DataStructureOfDelaun::Allocator ( ) const
    inline

    Gives the data structure for initialization of cell size and tolerance.

    ◆ ClearDeleted()

    void BRepMesh_DataStructureOfDelaun::ClearDeleted ( )
    inline

    Substitutes deleted items by the last one from corresponding map to have only non-deleted elements, links or nodes in the structure.

    ◆ ClearDomain()

    void BRepMesh_DataStructureOfDelaun::ClearDomain ( )

    Removes all elements.

    ◆ Data()

    const occ::handle< BRepMesh_VertexTool > & BRepMesh_DataStructureOfDelaun::Data ( )
    inline

    Gives the data structure for initialization of cell size and tolerance.

    ◆ Dump()

    void BRepMesh_DataStructureOfDelaun::Dump ( const char * theFileNameStr)

    Adds element to the mesh if it is not already in the mesh.

    Parameters
    theElementelement to be added to the mesh.
    Returns
    index of the element in the structure.

    ◆ ElementNodes()

    void BRepMesh_DataStructureOfDelaun::ElementNodes ( const BRepMesh_Triangle & theElement,
    int(&) theNodes[3] )

    Returns indices of nodes forming the given element.

    Parameters
    theElementelement which nodes should be retrieved.
    [out]theNodesnodes of the given element.

    ◆ ElementsConnectedTo()

    const BRepMesh_PairOfIndex & BRepMesh_DataStructureOfDelaun::ElementsConnectedTo ( const int theLinkIndex) const
    inline

    Returns indices of elements connected to the link with the given index.

    Parameters
    theLinkIndexindex of link whose data should be retrieved.
    Returns
    indices of elements connected to the link.

    ◆ ElementsOfDomain()

    const IMeshData::MapOfInteger & BRepMesh_DataStructureOfDelaun::ElementsOfDomain ( ) const
    inline

    Returns map of indices of elements registered in mesh.

    ◆ GetElement()

    const BRepMesh_Triangle & BRepMesh_DataStructureOfDelaun::GetElement ( const int theIndex)
    inline

    Get element by the index.

    Parameters
    theIndexindex of an element.
    Returns
    element with the given index.

    ◆ GetLink()

    const BRepMesh_Edge & BRepMesh_DataStructureOfDelaun::GetLink ( const int theIndex)
    inline

    Get link by the index.

    Parameters
    theIndexindex of a link.
    Returns
    link with the given index.

    ◆ GetNode()

    const BRepMesh_Vertex & BRepMesh_DataStructureOfDelaun::GetNode ( const int theIndex)
    inline

    Get node by the index.

    Parameters
    theIndexindex of a node.
    Returns
    node with the given index.

    ◆ IndexOf() [1/2]

    int BRepMesh_DataStructureOfDelaun::IndexOf ( const BRepMesh_Edge & theLink) const
    inline

    Finds the index of the given link.

    Parameters
    theLinklink to find.
    Returns
    index of the given element of zero if link is not in the mesh.

    ◆ IndexOf() [2/2]

    int BRepMesh_DataStructureOfDelaun::IndexOf ( const BRepMesh_Vertex & theNode)
    inline

    Finds the index of the given node.

    Parameters
    theNodenode to find.
    Returns
    index of the given element of zero if node is not in the mesh.

    ◆ LinksConnectedTo()

    const IMeshData::ListOfInteger & BRepMesh_DataStructureOfDelaun::LinksConnectedTo ( const int theIndex) const
    inline

    Get list of links attached to the node with the given index.

    Parameters
    theIndexindex of node whose links should be retrieved.
    Returns
    list of links attached to the node.

    ◆ LinksOfDomain()

    const IMeshData::MapOfInteger & BRepMesh_DataStructureOfDelaun::LinksOfDomain ( ) const
    inline

    Returns map of indices of links registered in mesh.

    ◆ NbElements()

    int BRepMesh_DataStructureOfDelaun::NbElements ( ) const
    inline

    Adds element to the mesh if it is not already in the mesh.

    Parameters
    theElementelement to be added to the mesh.
    Returns
    index of the element in the structure.

    ◆ NbLinks()

    int BRepMesh_DataStructureOfDelaun::NbLinks ( ) const
    inline

    Adds link to the mesh if it is not already in the mesh.

    Parameters
    theLinklink to be added to the mesh.
    Returns
    index of the link in the structure.

    ◆ NbNodes()

    int BRepMesh_DataStructureOfDelaun::NbNodes ( ) const
    inline

    Adds node to the mesh if it is not already in the mesh.

    Parameters
    theNodenode to be added to the mesh.
    isForceAddadds the given node to structure without checking on coincidence with other nodes.
    Returns
    index of the node in the structure.

    ◆ operator()()

    const BRepMesh_Vertex & BRepMesh_DataStructureOfDelaun::operator() ( const int theIndex)
    inline

    Alias for GetNode.

    ◆ RemoveElement()

    void BRepMesh_DataStructureOfDelaun::RemoveElement ( const int theIndex)

    Removes element from the mesh.

    Parameters
    theIndexindex of element to be removed.

    ◆ RemoveLink()

    void BRepMesh_DataStructureOfDelaun::RemoveLink ( const int theIndex,
    const bool isForce = false )

    Removes link from the mesh in case if it has no connected elements and its type is Free.

    Parameters
    theIndexindex of link to be removed.
    isForceif TRUE link will be removed even if movability is not Free.

    ◆ RemoveNode()

    void BRepMesh_DataStructureOfDelaun::RemoveNode ( const int theIndex,
    const bool isForce = false )
    inline

    Removes node from the mesh in case if it has no connected links and its type is Free.

    Parameters
    theIndexindex of node to be removed.
    isForceif TRUE node will be removed even if movability is not Free.

    ◆ SubstituteElement()

    bool BRepMesh_DataStructureOfDelaun::SubstituteElement ( const int theIndex,
    const BRepMesh_Triangle & theNewElement )

    Substitutes the element with the given index by new one.

    Parameters
    theIndexindex of element to be substituted.
    theNewLinksubstituting element.
    Returns
    FALSE in case if new element is already in the structure, TRUE elsewhere.

    ◆ SubstituteLink()

    bool BRepMesh_DataStructureOfDelaun::SubstituteLink ( const int theIndex,
    const BRepMesh_Edge & theNewLink )

    Substitutes the link with the given index by new one.

    Parameters
    theIndexindex of link to be substituted.
    theNewLinksubstituting link.
    Returns
    FALSE in case if new link is already in the structure, TRUE elsewhere.

    ◆ SubstituteNode()

    bool BRepMesh_DataStructureOfDelaun::SubstituteNode ( const int theIndex,
    const BRepMesh_Vertex & theNewNode )

    Substitutes the node with the given index by new one.

    Parameters
    theIndexindex of node to be substituted.
    theNewNodesubstituting node.
    Returns
    FALSE in case if new node is already in the structure, TRUE elsewhere.

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