SALOME - SMESH
SMDS_PolyhedralVolumeOfNodes Class Reference

#include <SMDS_PolyhedralVolumeOfNodes.hxx>

Inheritance diagram for SMDS_PolyhedralVolumeOfNodes:
Inheritance graph
Collaboration diagram for SMDS_PolyhedralVolumeOfNodes:
Collaboration graph

Public Member Functions

 SMDS_PolyhedralVolumeOfNodes (std::vector< const SMDS_MeshNode *> nodes, std::vector< int > quantities)
 
virtual SMDSAbs_ElementType GetType () const
 Return the type of the current element. More...
 
virtual SMDSAbs_EntityType GetEntityType () const
 Return type of entity. More...
 
virtual bool IsPoly () const
 
bool ChangeNodes (const std::vector< const SMDS_MeshNode *> &nodes, const std::vector< int > &quantities)
 
virtual int NbNodes () const
 
virtual int NbEdges () const
 
virtual int NbFaces () const
 
int NbFaceNodes (const int face_ind) const
 
const SMDS_MeshNodeGetFaceNode (const int face_ind, const int node_ind) const
 
const std::vector< int > & GetQuanities () const
 
virtual void Print (std::ostream &OS) const
 
virtual const SMDS_MeshNodeGetNode (const int ind) const
 Return node by its index. More...
 
SMDS_ElemIteratorPtr uniqueNodesIterator () const
 Return iterator on unique nodes. More...
 
int NbUniqueNodes () const
 Return nb of unique nodes. More...
 
SMDS_ElemIteratorPtr nodesIterator () const
 
SMDS_ElemIteratorPtr edgesIterator () const
 
SMDS_ElemIteratorPtr facesIterator () const
 
int GetID () const
 
virtual bool IsQuadratic () const
 
virtual bool IsMediumNode (const SMDS_MeshNode *node) const
 
const SMDS_MeshNodeGetNodeWrap (const int ind) const
 Return node by its index. More...
 
virtual bool IsValidIndex (const int ind) const
 Return true if index of node is valid (0 <= ind < NbNodes()) More...
 
int WrappedIndex (const int ind) const
 Return a valid node index, fixing the given one if necessary. More...
 
int GetNodeIndex (const SMDS_MeshNode *node) const
 Check if a node belongs to the element. More...
 

Protected Member Functions

SMDS_ElemIteratorPtr elementsIterator (SMDSAbs_ElementType type) const
 

Protected Attributes

const SMDS_MeshNode ** myNodes
 
int myNbNodes
 

Private Member Functions

bool ChangeNodes (const SMDS_MeshNode *nodes[], const int nbNodes)
 

Private Attributes

std::vector< const SMDS_MeshNode * > myNodesByFaces
 
std::vector< intmyQuantities
 

Detailed Description

Definition at line 33 of file SMDS_PolyhedralVolumeOfNodes.hxx.

Constructor & Destructor Documentation

◆ SMDS_PolyhedralVolumeOfNodes()

SMDS_PolyhedralVolumeOfNodes::SMDS_PolyhedralVolumeOfNodes ( std::vector< const SMDS_MeshNode *>  nodes,
std::vector< int quantities 
)

Member Function Documentation

◆ GetType()

virtual SMDSAbs_ElementType SMDS_PolyhedralVolumeOfNodes::GetType ( ) const
virtual

Return the type of the current element.

Reimplemented from SMDS_VolumeOfNodes.

◆ GetEntityType()

virtual SMDSAbs_EntityType SMDS_PolyhedralVolumeOfNodes::GetEntityType ( ) const
virtual

Return type of entity.

Reimplemented from SMDS_VolumeOfNodes.

Definition at line 42 of file SMDS_PolyhedralVolumeOfNodes.hxx.

References SMDSEntity_Polyhedra.

◆ IsPoly()

virtual bool SMDS_PolyhedralVolumeOfNodes::IsPoly ( ) const
virtual

Reimplemented from SMDS_MeshElement.

Definition at line 43 of file SMDS_PolyhedralVolumeOfNodes.hxx.

References SMDS_VolumeOfNodes::ChangeNodes(), SMDS_VolumeOfNodes::NbEdges(), SMDS_VolumeOfNodes::NbFaces(), and SMDS_VolumeOfNodes::NbNodes().

Here is the call graph for this function:

◆ ChangeNodes() [1/2]

bool SMDS_PolyhedralVolumeOfNodes::ChangeNodes ( const std::vector< const SMDS_MeshNode *> &  nodes,
const std::vector< int > &  quantities 
)

◆ NbNodes()

virtual int SMDS_PolyhedralVolumeOfNodes::NbNodes ( ) const
virtual

Reimplemented from SMDS_MeshElement.

◆ NbEdges()

virtual int SMDS_PolyhedralVolumeOfNodes::NbEdges ( ) const
virtual

Reimplemented from SMDS_MeshElement.

◆ NbFaces()

virtual int SMDS_PolyhedralVolumeOfNodes::NbFaces ( ) const
virtual

Reimplemented from SMDS_MeshElement.

◆ NbFaceNodes()

int SMDS_PolyhedralVolumeOfNodes::NbFaceNodes ( const int  face_ind) const

◆ GetFaceNode()

const SMDS_MeshNode* SMDS_PolyhedralVolumeOfNodes::GetFaceNode ( const int  face_ind,
const int  node_ind 
) const

◆ GetQuanities()

const std::vector<int>& SMDS_PolyhedralVolumeOfNodes::GetQuanities ( ) const

Definition at line 59 of file SMDS_PolyhedralVolumeOfNodes.hxx.

References SMDS_VolumeOfNodes::GetNode(), and SMDS_VolumeOfNodes::Print().

Here is the call graph for this function:

◆ Print()

virtual void SMDS_PolyhedralVolumeOfNodes::Print ( std::ostream &  OS) const
virtual

Reimplemented from SMDS_MeshElement.

◆ GetNode()

virtual const SMDS_MeshNode* SMDS_PolyhedralVolumeOfNodes::GetNode ( const int  ind) const
virtual

Return node by its index.

Reimplemented from SMDS_VolumeOfNodes.

◆ uniqueNodesIterator()

SMDS_ElemIteratorPtr SMDS_PolyhedralVolumeOfNodes::uniqueNodesIterator ( ) const

Return iterator on unique nodes.

◆ NbUniqueNodes()

int SMDS_PolyhedralVolumeOfNodes::NbUniqueNodes ( ) const

Return nb of unique nodes.

Definition at line 75 of file SMDS_PolyhedralVolumeOfNodes.hxx.

References SMDS_VolumeOfNodes::ChangeNodes(), SMDS_VolumeOfNodes::elementsIterator(), and SMDS_VolumeOfNodes::myNbNodes.

Here is the call graph for this function:

◆ elementsIterator()

SMDS_ElemIteratorPtr SMDS_PolyhedralVolumeOfNodes::elementsIterator ( SMDSAbs_ElementType  type) const
protectedvirtual

Reimplemented from SMDS_MeshElement.

◆ ChangeNodes() [2/2]

bool SMDS_PolyhedralVolumeOfNodes::ChangeNodes ( const SMDS_MeshNode nodes[],
const int  nbNodes 
)
private

◆ nodesIterator()

SMDS_ElemIteratorPtr SMDS_MeshElement::nodesIterator ( ) const
inherited

◆ edgesIterator()

SMDS_ElemIteratorPtr SMDS_MeshElement::edgesIterator ( ) const
inherited

◆ facesIterator()

SMDS_ElemIteratorPtr SMDS_MeshElement::facesIterator ( ) const
inherited

◆ GetID()

int SMDS_MeshElement::GetID ( ) const
inherited

Referenced by TIDCompare::operator()(), TNode::operator<(), and SMESH_TLink::SMESH_TLink().

Here is the caller graph for this function:

◆ IsQuadratic()

virtual bool SMDS_MeshElement::IsQuadratic ( ) const
virtualinherited

Reimplemented in SMDS_QuadraticVolumeOfNodes, SMDS_QuadraticFaceOfNodes, and SMDS_QuadraticEdge.

Referenced by SMDS_MeshInfo::RemoveEdge().

Here is the caller graph for this function:

◆ IsMediumNode()

virtual bool SMDS_MeshElement::IsMediumNode ( const SMDS_MeshNode node) const
virtualinherited

◆ GetNodeWrap()

const SMDS_MeshNode* SMDS_MeshElement::GetNodeWrap ( const int  ind) const
inherited

Return node by its index.

Parameters
ind- node index
Return values
constSMDS_MeshNode* - the node

Index is wrapped if it is out of a valid range

Definition at line 92 of file SMDS_MeshElement.hxx.

◆ IsValidIndex()

virtual bool SMDS_MeshElement::IsValidIndex ( const int  ind) const
virtualinherited

Return true if index of node is valid (0 <= ind < NbNodes())

Parameters
ind- node index
Return values
bool- index check result

◆ WrappedIndex()

int SMDS_MeshElement::WrappedIndex ( const int  ind) const
inherited

Return a valid node index, fixing the given one if necessary.

Parameters
ind- node index
Return values
int- valid node index

Definition at line 106 of file SMDS_MeshElement.hxx.

◆ GetNodeIndex()

int SMDS_MeshElement::GetNodeIndex ( const SMDS_MeshNode node) const
inherited

Check if a node belongs to the element.

Parameters
node- the node to check
Return values
int- node index within the element, -1 if not found

Field Documentation

◆ myNodesByFaces

std::vector<const SMDS_MeshNode *> SMDS_PolyhedralVolumeOfNodes::myNodesByFaces
private

Definition at line 86 of file SMDS_PolyhedralVolumeOfNodes.hxx.

◆ myQuantities

std::vector<int> SMDS_PolyhedralVolumeOfNodes::myQuantities
private

Definition at line 87 of file SMDS_PolyhedralVolumeOfNodes.hxx.

◆ myNodes

const SMDS_MeshNode** SMDS_VolumeOfNodes::myNodes
protectedinherited

Definition at line 85 of file SMDS_VolumeOfNodes.hxx.

◆ myNbNodes

int SMDS_VolumeOfNodes::myNbNodes
protectedinherited

Definition at line 86 of file SMDS_VolumeOfNodes.hxx.

Referenced by NbUniqueNodes().