Open CASCADE Technology 7.8.0
|
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>
Public Member Functions | |
BRepMesh_DataStructureOfDelaun (const Handle< NCollection_IncAllocator > &theAllocator, const Standard_Integer theReservedNodeSize=100) | |
Constructor. | |
API for accessing mesh nodes. | |
Standard_Integer | NbNodes () const |
Returns number of nodes. | |
Standard_Integer | AddNode (const BRepMesh_Vertex &theNode, const Standard_Boolean isForceAdd=Standard_False) |
Adds node to the mesh if it is not already in the mesh. | |
Standard_Integer | IndexOf (const BRepMesh_Vertex &theNode) |
Finds the index of the given node. | |
const BRepMesh_Vertex & | GetNode (const Standard_Integer theIndex) |
Get node by the index. | |
const BRepMesh_Vertex & | operator() (const Standard_Integer theIndex) |
Alias for GetNode. | |
Standard_Boolean | SubstituteNode (const Standard_Integer theIndex, const BRepMesh_Vertex &theNewNode) |
Substitutes the node with the given index by new one. | |
void | RemoveNode (const Standard_Integer theIndex, const Standard_Boolean isForce=Standard_False) |
Removes node from the mesh in case if it has no connected links and its type is Free. | |
const IMeshData::ListOfInteger & | LinksConnectedTo (const Standard_Integer theIndex) const |
Get list of links attached to the node with the given index. | |
API for accessing mesh links. | |
Standard_Integer | NbLinks () const |
Returns number of links. | |
Standard_Integer | AddLink (const BRepMesh_Edge &theLink) |
Adds link to the mesh if it is not already in the mesh. | |
Standard_Integer | IndexOf (const BRepMesh_Edge &theLink) const |
Finds the index of the given link. | |
const BRepMesh_Edge & | GetLink (const Standard_Integer theIndex) |
Get link by the index. | |
const IMeshData::MapOfInteger & | LinksOfDomain () const |
Returns map of indices of links registered in mesh. | |
Standard_Boolean | SubstituteLink (const Standard_Integer theIndex, const BRepMesh_Edge &theNewLink) |
Substitutes the link with the given index by new one. | |
void | RemoveLink (const Standard_Integer theIndex, const Standard_Boolean isForce=Standard_False) |
Removes link from the mesh in case if it has no connected elements and its type is Free. | |
const BRepMesh_PairOfIndex & | ElementsConnectedTo (const Standard_Integer theLinkIndex) const |
Returns indices of elements connected to the link with the given index. | |
API for accessing mesh elements. | |
Standard_Integer | NbElements () const |
Returns number of links. | |
Standard_Integer | AddElement (const BRepMesh_Triangle &theElement) |
Adds element to the mesh if it is not already in the mesh. | |
const BRepMesh_Triangle & | GetElement (const Standard_Integer theIndex) |
Get element by the index. | |
const IMeshData::MapOfInteger & | ElementsOfDomain () const |
Returns map of indices of elements registered in mesh. | |
Standard_Boolean | SubstituteElement (const Standard_Integer theIndex, const BRepMesh_Triangle &theNewElement) |
Substitutes the element with the given index by new one. | |
void | RemoveElement (const Standard_Integer theIndex) |
Removes element from the mesh. | |
void | ElementNodes (const BRepMesh_Triangle &theElement, Standard_Integer(&theNodes)[3]) |
Returns indices of nodes forming the given element. | |
void | Dump (Standard_CString theFileNameStr) |
Returns number of links. | |
Public Member Functions inherited from Standard_Transient | |
Standard_Transient () | |
Empty constructor. | |
Standard_Transient (const Standard_Transient &) | |
Copy constructor – does nothing. | |
Standard_Transient & | operator= (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_Transient * | This () 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. | |
Auxiliary API | |
void | Statistics (Standard_OStream &theStream) const |
Dumps information about this structure. | |
const Handle< NCollection_IncAllocator > & | Allocator () const |
Returns memory allocator used by the structure. | |
const 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 | |
Public Types inherited from Standard_Transient | |
typedef void | base_type |
Returns a type descriptor about this object. | |
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. | |
Describes the data structure necessary for the mesh algorithms in two dimensions plane or on surface by meshing in UV space.
BRepMesh_DataStructureOfDelaun::BRepMesh_DataStructureOfDelaun | ( | const Handle< NCollection_IncAllocator > & | theAllocator, |
const Standard_Integer | theReservedNodeSize = 100 |
||
) |
Constructor.
theAllocator | memory allocator to be used by internal structures. |
theReservedNodeSize | presumed number of nodes in this mesh. |
Standard_Integer BRepMesh_DataStructureOfDelaun::AddElement | ( | const BRepMesh_Triangle & | theElement | ) |
Adds element to the mesh if it is not already in the mesh.
theElement | element to be added to the mesh. |
Standard_Integer BRepMesh_DataStructureOfDelaun::AddLink | ( | const BRepMesh_Edge & | theLink | ) |
Adds link to the mesh if it is not already in the mesh.
theLink | link to be added to the mesh. |
Standard_Integer BRepMesh_DataStructureOfDelaun::AddNode | ( | const BRepMesh_Vertex & | theNode, |
const Standard_Boolean | isForceAdd = Standard_False |
||
) |
Adds node to the mesh if it is not already in the mesh.
theNode | node to be added to the mesh. |
isForceAdd | adds the given node to structure without checking on coincidence with other nodes. |
|
inline |
Returns memory allocator used by the structure.
|
inline |
Substitutes deleted items by the last one from corresponding map to have only non-deleted elements, links or nodes in the structure.
void BRepMesh_DataStructureOfDelaun::ClearDomain | ( | ) |
Removes all elements.
|
inline |
Gives the data structure for initialization of cell size and tolerance.
void BRepMesh_DataStructureOfDelaun::Dump | ( | Standard_CString | theFileNameStr | ) |
Returns number of links.
void BRepMesh_DataStructureOfDelaun::ElementNodes | ( | const BRepMesh_Triangle & | theElement, |
Standard_Integer(&) | theNodes[3] | ||
) |
Returns indices of nodes forming the given element.
theElement | element which nodes should be retrieved. | |
[out] | theNodes | nodes of the given element. |
|
inline |
Returns indices of elements connected to the link with the given index.
theLinkIndex | index of link whose data should be retrieved. |
|
inline |
Returns map of indices of elements registered in mesh.
|
inline |
Get element by the index.
theIndex | index of an element. |
|
inline |
Get link by the index.
theIndex | index of a link. |
|
inline |
Get node by the index.
theIndex | index of a node. |
|
inline |
Finds the index of the given link.
theLink | link to find. |
|
inline |
Finds the index of the given node.
theNode | node to find. |
|
inline |
Get list of links attached to the node with the given index.
theIndex | index of node whose links should be retrieved. |
|
inline |
Returns map of indices of links registered in mesh.
|
inline |
Returns number of links.
|
inline |
Returns number of links.
|
inline |
Returns number of nodes.
|
inline |
Alias for GetNode.
void BRepMesh_DataStructureOfDelaun::RemoveElement | ( | const Standard_Integer | theIndex | ) |
Removes element from the mesh.
theIndex | index of element to be removed. |
void BRepMesh_DataStructureOfDelaun::RemoveLink | ( | const Standard_Integer | theIndex, |
const Standard_Boolean | isForce = Standard_False |
||
) |
Removes link from the mesh in case if it has no connected elements and its type is Free.
theIndex | index of link to be removed. |
isForce | if TRUE link will be removed even if movability is not Free. |
|
inline |
Removes node from the mesh in case if it has no connected links and its type is Free.
theIndex | index of node to be removed. |
isForce | if TRUE node will be removed even if movability is not Free. |
void BRepMesh_DataStructureOfDelaun::Statistics | ( | Standard_OStream & | theStream | ) | const |
Dumps information about this structure.
theStream | stream to be used for dump. |
Standard_Boolean BRepMesh_DataStructureOfDelaun::SubstituteElement | ( | const Standard_Integer | theIndex, |
const BRepMesh_Triangle & | theNewElement | ||
) |
Substitutes the element with the given index by new one.
theIndex | index of element to be substituted. |
theNewLink | substituting element. |
Standard_Boolean BRepMesh_DataStructureOfDelaun::SubstituteLink | ( | const Standard_Integer | theIndex, |
const BRepMesh_Edge & | theNewLink | ||
) |
Substitutes the link with the given index by new one.
theIndex | index of link to be substituted. |
theNewLink | substituting link. |
Standard_Boolean BRepMesh_DataStructureOfDelaun::SubstituteNode | ( | const Standard_Integer | theIndex, |
const BRepMesh_Vertex & | theNewNode | ||
) |
Substitutes the node with the given index by new one.
theIndex | index of node to be substituted. |
theNewNode | substituting node. |