Open CASCADE Technology
7.4.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. More... | |
API for accessing mesh nodes. | |
Standard_Integer | NbNodes () const |
Returns number of nodes. More... | |
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. More... | |
Standard_Integer | IndexOf (const BRepMesh_Vertex &theNode) |
Finds the index of the given node. More... | |
const BRepMesh_Vertex & | GetNode (const Standard_Integer theIndex) |
Get node by the index. More... | |
const BRepMesh_Vertex & | operator() (const Standard_Integer theIndex) |
Alias for GetNode. More... | |
Standard_Boolean | SubstituteNode (const Standard_Integer theIndex, const BRepMesh_Vertex &theNewNode) |
Substitutes the node with the given index by new one. More... | |
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. More... | |
const IMeshData::ListOfInteger & | LinksConnectedTo (const Standard_Integer theIndex) const |
Get list of links attached to the node with the given index. More... | |
API for accessing mesh links. | |
Standard_Integer | NbLinks () const |
Returns number of links. More... | |
Standard_Integer | AddLink (const BRepMesh_Edge &theLink) |
Adds link to the mesh if it is not already in the mesh. More... | |
Standard_Integer | IndexOf (const BRepMesh_Edge &theLink) const |
Finds the index of the given link. More... | |
const BRepMesh_Edge & | GetLink (const Standard_Integer theIndex) |
Get link by the index. More... | |
const IMeshData::MapOfInteger & | LinksOfDomain () const |
Returns map of indices of links registered in mesh. More... | |
Standard_Boolean | SubstituteLink (const Standard_Integer theIndex, const BRepMesh_Edge &theNewLink) |
Substitutes the link with the given index by new one. More... | |
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. More... | |
const BRepMesh_PairOfIndex & | ElementsConnectedTo (const Standard_Integer theLinkIndex) const |
Returns indices of elements conected to the link with the given index. More... | |
API for accessing mesh elements. | |
Standard_Integer | NbElements () const |
Returns number of links. More... | |
Standard_Integer | AddElement (const BRepMesh_Triangle &theElement) |
Adds element to the mesh if it is not already in the mesh. More... | |
const BRepMesh_Triangle & | GetElement (const Standard_Integer theIndex) |
Get element by the index. More... | |
const IMeshData::MapOfInteger & | ElementsOfDomain () const |
Returns map of indices of elements registered in mesh. More... | |
Standard_Boolean | SubstituteElement (const Standard_Integer theIndex, const BRepMesh_Triangle &theNewElement) |
Substitutes the element with the given index by new one. More... | |
void | RemoveElement (const Standard_Integer theIndex) |
Removes element from the mesh. More... | |
void | ElementNodes (const BRepMesh_Triangle &theElement, Standard_Integer(&theNodes)[3]) |
Returns indices of nodes forming the given element. More... | |
void | Dump (Standard_CString theFileNameStr) |
Returns number of links. More... | |
Public Member Functions inherited from Standard_Transient | |
Standard_Transient () | |
Empty constructor. More... | |
Standard_Transient (const Standard_Transient &) | |
Copy constructor – does nothing. More... | |
Standard_Transient & | operator= (const Standard_Transient &) |
Assignment operator, needed to avoid copying reference counter. More... | |
virtual | ~Standard_Transient () |
Destructor must be virtual. More... | |
virtual void | Delete () const |
Memory deallocator for transient classes. More... | |
virtual const opencascade::handle< Standard_Type > & | DynamicType () const |
Returns a type descriptor about this object. More... | |
Standard_Boolean | IsInstance (const opencascade::handle< Standard_Type > &theType) const |
Returns a true value if this is an instance of Type. More... | |
Standard_Boolean | IsInstance (const Standard_CString theTypeName) const |
Returns a true value if this is an instance of TypeName. More... | |
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. More... | |
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. More... | |
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. More... | |
Standard_Integer | GetRefCount () const |
Get the reference counter of this object. More... | |
void | IncrementRefCounter () const |
Increments the reference counter of this object. More... | |
Standard_Integer | DecrementRefCounter () const |
Decrements the reference counter of this object; returns the decremented value. More... | |
Auxilary API | |
void | Statistics (Standard_OStream &theStream) const |
Dumps information about this structure. More... | |
const Handle< NCollection_IncAllocator > & | Allocator () const |
Returns memory allocator used by the structure. More... | |
const Handle< BRepMesh_VertexTool > & | Data () |
Gives the data structure for initialization of cell size and tolerance. More... | |
void | ClearDomain () |
Removes all elements. More... | |
void | ClearDeleted () |
Substitutes deleted items by the last one from corresponding map to have only non-deleted elements, links or nodes in the structure. More... | |
Additional Inherited Members | |
Public Types inherited from Standard_Transient | |
typedef void | base_type |
Returns a type descriptor about this object. More... | |
Static Public Member Functions inherited from Standard_Transient | |
static const char * | get_type_name () |
Returns a type descriptor about this object. More... | |
static const opencascade::handle< Standard_Type > & | get_type_descriptor () |
Returns type descriptor of Standard_Transient class. More... | |
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 conected 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 node.
theNode | node to find. |
|
inline |
Finds the index of the given link.
theLink | link 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. |