Version: 9.12.0
SMDS_FaceOfNodes Class Reference

#include <SMDS_FaceOfNodes.hxx>

Inheritance diagram for SMDS_FaceOfNodes:

Public Types

typedef SMDS_StdIterator< const SMDS_MeshNode *, SMDS_NodeIteratorPtriterator
 

Public Member Functions

void Print (std::ostream &OS) const
 
 SMDS_FaceOfNodes (const SMDS_MeshNode *node1, const SMDS_MeshNode *node2, const SMDS_MeshNode *node3)
 
 SMDS_FaceOfNodes (const SMDS_MeshNode *node1, const SMDS_MeshNode *node2, const SMDS_MeshNode *node3, const SMDS_MeshNode *node4)
 
virtual bool ChangeNodes (const SMDS_MeshNode *nodes[], const int nbNodes)
 
virtual int NbEdges () const
 
virtual int NbFaces () const
 
virtual int NbNodes () const
 
virtual int NbCornerNodes () const
 
virtual int GetNodeIndex (const SMDS_MeshNode *node) const
 Check if a node belongs to the element. More...
 
virtual bool IsPoly () const
 
virtual bool IsQuadratic () const
 
virtual SMDS_ElemIteratorPtr nodesIterator () const
 
virtual SMDS_NodeIteratorPtr nodeIterator () const
 
virtual const SMDS_MeshNodeGetNode (const int ind) const
 Return node by its index. More...
 
virtual SMDSAbs_ElementType GetType () const
 
virtual SMDSAbs_EntityType GetEntityType () const
 
virtual SMDSAbs_GeometryType GetGeomType () const
 
virtual smIdType GetID () const
 Return ID of an element. More...
 
virtual int GetShapeID () const
 Return ID of a shape this element was generated on. More...
 
virtual void setIsMarked (bool is) const
 Mark this element. More...
 
virtual bool isMarked () const
 Check if this element is marked. More...
 
virtual VTKCellType GetVtkType () const
 
virtual SMDS_NodeIteratorPtr interlacedNodesIterator () const
 
virtual SMDS_NodeIteratorPtr nodesIteratorToUNV () const
 
iterator begin_nodes () const
 
iterator end_nodes () const
 
virtual bool IsMediumNode (const SMDS_MeshNode *node) const
 Check if a node is a medium node of a quadratic cell. More...
 
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 corner node index, fixing the given one if necessary. More...
 
virtual vtkIdType GetVtkID () const
 Return VTK ID of this element. More...
 
virtual int getshapeId () const
 
bool IsNull () const
 
SMDS_MeshGetMesh () const
 Return the mesh this element belongs to. More...
 

Protected Types

enum  Bits { BIT_IS_MARKED = 1 , BITS_SHIFT = 1 }
 

Protected Member Functions

virtual void setID (const smIdType id)
 
virtual void setShapeID (const int shapeID)
 
virtual void setShapeID (const int shapeID) const
 Set ID of a shape this element was generated on. More...
 
void setVtkID (const vtkIdType vtkID)
 Store VTK ID. More...
 
SMDS_UnstructuredGridgetGrid () const
 Return a SMDS_UnstructuredGrid. More...
 

Protected Attributes

smIdType myID
 
int myShapeID
 
SMDS_ElementChunkmyHolder
 

Private Attributes

const SMDS_MeshNodemyNodes [4]
 
int myNbNodes
 

Member Typedef Documentation

◆ iterator

Member Enumeration Documentation

◆ Bits

enum SMDS_CellOfNodes::Bits
protectedinherited
Enumerator
BIT_IS_MARKED 
BITS_SHIFT 

Constructor & Destructor Documentation

◆ SMDS_FaceOfNodes() [1/2]

SMDS_FaceOfNodes::SMDS_FaceOfNodes ( const SMDS_MeshNode node1,
const SMDS_MeshNode node2,
const SMDS_MeshNode node3 
)

References myNbNodes, and myNodes.

◆ SMDS_FaceOfNodes() [2/2]

SMDS_FaceOfNodes::SMDS_FaceOfNodes ( const SMDS_MeshNode node1,
const SMDS_MeshNode node2,
const SMDS_MeshNode node3,
const SMDS_MeshNode node4 
)

References myNbNodes, and myNodes.

Member Function Documentation

◆ begin_nodes()

◆ ChangeNodes()

bool SMDS_FaceOfNodes::ChangeNodes ( const SMDS_MeshNode nodes[],
const int  nbNodes 
)
virtual

References myNbNodes, and myNodes.

◆ end_nodes()

◆ GetEntityType()

SMDSAbs_EntityType SMDS_FaceOfNodes::GetEntityType ( ) const
virtual

◆ GetGeomType()

SMDSAbs_GeometryType SMDS_FaceOfNodes::GetGeomType ( ) const
virtual

◆ getGrid()

◆ GetID()

smIdType SMDS_CellOfNodes::GetID ( ) const
virtualinherited

Return ID of an element.

Reimplemented from SMDS_MeshElement.

References SMDS_CellOfNodes::myID.

Referenced by Print(), SMDS_PolygonalFaceOfNodes::Print(), and SMDS_VolumeOfNodes::Print().

◆ GetMesh()

◆ GetNode()

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

Return node by its index.

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

Implements SMDS_MeshElement.

References myNodes.

◆ GetNodeIndex()

int SMDS_FaceOfNodes::GetNodeIndex ( const SMDS_MeshNode node) const
virtual

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

Reimplemented from SMDS_MeshElement.

References myNbNodes, and myNodes.

◆ 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 of corner nodes

Referenced by SMESH_MeshAlgos::Intersector::Algo::Cut(), SMESH_MeshEditor::GetLinkedNodes(), and SMESH_MeshEditor::makeWalls().

◆ GetShapeID()

int SMDS_CellOfNodes::GetShapeID ( ) const
virtualinherited

Return ID of a shape this element was generated on.

Reimplemented from SMDS_MeshElement.

References SMDS_CellOfNodes::BITS_SHIFT, and SMDS_CellOfNodes::myShapeID.

◆ getshapeId()

virtual int SMDS_MeshElement::getshapeId ( ) const
virtualinherited

Referenced by SMESH_Delaunay::addCloseNodes(), SMESHDS_SubMesh::AddNode(), areNodesBound(), StdMeshers_Quadrangle_2D::check(), SMESH_MesherHelper::CheckNodeU(), SMESH_MesherHelper::CheckNodeUV(), StdMeshers_Import_1D2D::Compute(), VISCOUS_3D::_ViscousBuilder::computeGeomSize(), SMESHDS_SubMesh::Contains(), SMESH_MeshEditor::convertElemToQuadratic(), SMESH_MeshEditor::ConvertToQuadratic(), SMESH_MeshEditor::copyPosition(), SMESH_Pattern::createElements(), SMESH_MeshEditor::CreateHoleSkin(), SMESH_MeshEditor::DeleteDiag(), SMESH_Mesh_i::exportMEDFields(), VISCOUS_3D::_ViscousBuilder::findEdgesToUpdateNormalNearConvexFace(), StdMeshers_ProjectionUtils::FindMatchingNodesOnFaces(), SMESH_MeshEditor::FindShape(), VISCOUS_3D::_ViscousBuilder::findShapesToSmooth(), SMESH_MesherHelper::FixQuadraticElements(), SMESH_MesherHelper::GetCentralNode(), VISCOUS_3D::_ViscousBuilder::getFaceNormal(), SMESH_MesherHelper::GetMediumNode(), SMESH_MesherHelper::getMediumNodeOnComposedWire(), SMESH_MesherHelper::GetMediumPos(), StdMeshers_PrismAsBlock::GetNodeColumn(), SMESH_MesherHelper::GetNodeU(), SMESH_MesherHelper::GetNodeUV(), VISCOUS_3D::_EdgesOnShape::GetNormal(), StdMeshers_FaceSide::GetOrderedNodes(), SMESH_ProxyMesh::GetProxyNode(), SMESH_Mesh_i::GetShapeID(), VISCOUS_3D::_Simplex::GetSimplices(), SMESH_MesherHelper::GetSubShapeByNode(), StdMeshers_FaceSide::GetUVPtStruct(), SMESH::Controls::Deflection2D::GetValue(), StdMeshers_PrismAsBlock::HasNodeColumn(), StdMeshers_PrismAsBlock::Init(), SMESH_MeshEditor::InsertNodesIntoLink(), SMESH_MeshEditor::InverseDiag(), SMESH_MesherHelper::IsCornerOfStructure(), SMESH::Controls::BelongToGeom::IsSatisfy(), SMESH::Controls::LyingOnGeom::IsSatisfy(), SMESH_Pattern::Load(), VISCOUS_3D::_ViscousBuilder::makeLayer(), SMESH_MeshEditor::MergeNodes(), StdMeshers_QuadToTriaAdaptor::MergePiramids(), DriverGMF_Write::Perform(), SMESH_MeshEditor::QuadTo4Tri(), SMESH_MeshEditor::Remove(), SMESHDS_Mesh::RemoveElement(), SMESHDS_SubMesh::RemoveElement(), SMESHDS_Mesh::RemoveFreeElement(), SMESHDS_Mesh::RemoveFreeNode(), SMESHDS_Mesh::RemoveNode(), SMESHDS_SubMesh::RemoveNode(), SMESH_MeshEditor::removeQuadElem(), VISCOUS_3D::_ViscousBuilder::setEdgeData(), SMESH_MeshEditor::SewSideElements(), VISCOUS_2D::_ViscousBuilder2D::shrink(), StdMeshers_Quadrangle_2D::smooth(), VISCOUS_3D::_ViscousBuilder::smoothAndCheck(), SMESH_MeshEditor::SplitBiQuadraticIntoLinear(), StdMeshers_PrismAsBlock::TPCurveOnHorFaceAdaptor::TPCurveOnHorFaceAdaptor(), SMESH_MeshEditor::TriToQuad(), SMESHDS_Mesh::UnSetElementOnShape(), SMESHDS_Mesh::UnSetNodeOnShape(), SMESH_MeshEditor::UpdateVolumes(), StdMeshers_PrismAsBlock::TSideFace::Value(), and SMESH_Algo::VertexNode().

◆ GetType()

virtual SMDSAbs_ElementType SMDS_FaceOfNodes::GetType ( ) const
virtual

Implements SMDS_MeshElement.

References SMDSAbs_Face.

◆ GetVtkID()

vtkIdType SMDS_MeshElement::GetVtkID ( ) const
virtualinherited

Return VTK ID of this element.

References SMDS_ElementChunk::GetVtkID(), and SMDS_MeshElement::myHolder.

Referenced by SMDS_MeshNode::AddInverseElement(), SMDS_ElementHolder::beforeCompacting(), SMDS_MeshCell::ChangeNodes(), SMDS_MeshVolume::ChangeNodes(), SMDS_MeshNode::ClearInverseElements(), SMDS_ElementFactory::Compact(), SMESH_MeshEditor::CreateHoleSkin(), SMESH_MeshEditor::DoubleNodesOnGroupBoundaries(), SMDS_UnstructuredGrid::extrudeVolumeFromFace(), SMDS_ElementFactory::Free(), SMDS_MeshNode::getCoord(), SMDS_BallElement::GetDiameter(), SMESH_VisualObjDef::GetElemVTKId(), SMESHGUI_PreVisualObj::GetElemVTKId(), SMDS_MeshVolume::GetFaceNode(), SMDS_MeshNode::GetInverseElementIterator(), SMDS_MeshCell::GetNode(), SMDS_MeshVolume::GetNode(), SMDS_MeshCell::GetNodeIndex(), SMDS_MeshVolume::GetNodeIndex(), SMESH_VisualObjDef::GetNodeVTKId(), SMDS_MeshVolume::GetQuantities(), SMESH::Controls::AspectRatio3D::GetValue(), SMDS_MeshCell::GetVtkType(), SMDS_MeshNode::GetXYZ(), SMDS_BallElement::init(), SMDS_MeshNode::init(), SMDS_MeshCell::init(), SMDS_MeshVolume::NbEdges(), SMDS_MeshVolume::NbFaceNodes(), SMDS_MeshVolume::NbFaces(), SMDS_MeshNode::NbInverseElements(), SMDS_MeshCell::NbNodes(), SMDS_MeshVolume::NbNodes(), SMDS_MeshCell::nodeIterator(), SMDS_MeshVolume::nodeIterator(), SMDS_MeshCell::nodesIterator(), SMDS_MeshVolume::nodesIterator(), SMDS_MeshCell::nodesIteratorToUNV(), SMDS_Mesh::RemoveFreeElement(), SMDS_MeshNode::RemoveInverseElement(), SMDS_BallElement::SetDiameter(), and SMDS_MeshNode::setXYZ().

◆ GetVtkType()

virtual VTKCellType SMDS_CellOfNodes::GetVtkType ( ) const
virtualinherited

Implements SMDS_MeshElement.

◆ interlacedNodesIterator()

◆ isMarked()

bool SMDS_CellOfNodes::isMarked ( ) const
virtualinherited

Check if this element is marked.

Reimplemented from SMDS_MeshElement.

References SMDS_CellOfNodes::BIT_IS_MARKED, and SMDS_CellOfNodes::myShapeID.

◆ IsMediumNode()

◆ IsNull()

◆ IsPoly()

virtual bool SMDS_FaceOfNodes::IsPoly ( ) const
virtual

Implements SMDS_MeshElement.

◆ IsQuadratic()

virtual bool SMDS_FaceOfNodes::IsQuadratic ( ) const
virtual

Implements SMDS_MeshElement.

◆ IsValidIndex()

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

References SMDS_MeshElement::NbNodes().

◆ NbCornerNodes()

virtual int SMDS_FaceOfNodes::NbCornerNodes ( ) const
virtual

◆ NbEdges()

int SMDS_FaceOfNodes::NbEdges ( ) const
virtual

Implements SMDS_MeshElement.

References NbNodes().

◆ NbFaces()

int SMDS_FaceOfNodes::NbFaces ( ) const
virtual

Implements SMDS_MeshElement.

◆ NbNodes()

int SMDS_FaceOfNodes::NbNodes ( ) const
virtual

◆ nodeIterator()

SMDS_NodeIteratorPtr SMDS_FaceOfNodes::nodeIterator ( ) const
virtual

Implements SMDS_MeshElement.

References myNodes, and NbNodes().

◆ nodesIterator()

SMDS_ElemIteratorPtr SMDS_FaceOfNodes::nodesIterator ( ) const
virtual

Implements SMDS_MeshElement.

References myNodes, and NbNodes().

◆ nodesIteratorToUNV()

virtual SMDS_NodeIteratorPtr SMDS_MeshElement::nodesIteratorToUNV ( ) const
virtualinherited

Reimplemented in SMDS_MeshCell.

◆ Print()

void SMDS_FaceOfNodes::Print ( std::ostream &  OS) const

◆ setID()

void SMDS_CellOfNodes::setID ( const smIdType  id)
protectedvirtualinherited

◆ setIsMarked()

void SMDS_CellOfNodes::setIsMarked ( bool  is) const
virtualinherited

Mark this element.

Reimplemented from SMDS_MeshElement.

References SMDS_CellOfNodes::BIT_IS_MARKED, and SMDS_CellOfNodes::myShapeID.

◆ setShapeID() [1/2]

void SMDS_CellOfNodes::setShapeID ( const int  shapeID)
protectedvirtualinherited

◆ setShapeID() [2/2]

void SMDS_MeshElement::setShapeID ( const int  shapeID) const
protectedvirtualinherited

◆ setVtkID()

void SMDS_MeshElement::setVtkID ( const vtkIdType  vtkID)
protectedinherited

◆ WrappedIndex()

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

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

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

References SMDS_MeshElement::NbCornerNodes().

Referenced by SMDS_PolygonalFaceOfNodes::GetNode().

Field Documentation

◆ myHolder

◆ myID

smIdType SMDS_CellOfNodes::myID
protectedinherited

◆ myNbNodes

int SMDS_FaceOfNodes::myNbNodes
private

◆ myNodes

const SMDS_MeshNode* SMDS_FaceOfNodes::myNodes[4]
private

◆ myShapeID