#include <SMDS_MeshNode.hxx>
Public Member Functions | |
virtual SMDSAbs_EntityType | GetEntityType () const |
virtual SMDSAbs_GeometryType | GetGeomType () const |
SMDS_ElemIteratorPtr | GetInverseElementIterator (SMDSAbs_ElementType type=SMDSAbs_All) const |
const SMDS_PositionPtr & | GetPosition () const |
virtual SMDSAbs_ElementType | GetType () const |
Return the type of the current element. More... | |
virtual vtkIdType | GetVtkType () const |
void | GetXYZ (double xyz[3]) const |
thread safe getting coords More... | |
int | NbInverseElements (SMDSAbs_ElementType type=SMDSAbs_All) const |
Count inverse elements of given type. More... | |
virtual int | NbNodes () const |
Return The number of nodes owned by the current element. More... | |
void | Print (std::ostream &OS) const |
void | SetPosition (const SMDS_PositionPtr &aPos) |
void | setXYZ (double x, double y, double z) |
double | X () const |
double | Y () const |
double | Z () const |
Public Member Functions inherited from SMDS_MeshElement | |
iterator | begin_nodes () const |
SMDS_ElemIteratorPtr | edgesIterator () const |
Create an iterator which iterate on edges linked with or owned by the element. More... | |
virtual SMDS_ElemIteratorPtr | elementsIterator (SMDSAbs_ElementType type) const |
iterator | end_nodes () const |
SMDS_ElemIteratorPtr | facesIterator () const |
Create an iterator which iterate on faces linked with or owned by the element. More... | |
virtual SMDSAbs_EntityType | GetEntityType () const =0 |
virtual SMDSAbs_GeometryType | GetGeomType () const =0 |
int | GetID () const |
int | getIdInShape () const |
ShortType | getMeshId () const |
virtual const SMDS_MeshNode * | GetNode (const int ind) const |
Return node by its index. More... | |
virtual int | GetNodeIndex (const SMDS_MeshNode *node) const |
Check if a node belongs to the element. More... | |
const SMDS_MeshNode * | GetNodeWrap (const int ind) const |
Return node by its index. More... | |
LongType | getshapeId () const |
virtual SMDSAbs_ElementType | GetType () const =0 |
Return the type of the current element. More... | |
int | getVtkId () const |
virtual vtkIdType | GetVtkType () const =0 |
virtual SMDS_ElemIteratorPtr | interlacedNodesElemIterator () const |
virtual SMDS_NodeIteratorPtr | interlacedNodesIterator () const |
virtual, redefined in vtkEdge, vtkFace and vtkVolume classes More... | |
virtual bool | IsMediumNode (const SMDS_MeshNode *node) const |
virtual bool | IsPoly () const |
virtual bool | IsQuadratic () const |
virtual bool | IsValidIndex (const int ind) const |
Return true if index of node is valid (0 <= ind < NbNodes()) More... | |
virtual int | NbCornerNodes () const |
Return number of nodes excluding medium ones. More... | |
virtual int | NbEdges () const |
Return the number of edges owned by or linked with the current element. More... | |
virtual int | NbFaces () const |
Return the number of faces owned by or linked with the current element. More... | |
virtual int | NbNodes () const |
Return The number of nodes owned by the current element. More... | |
virtual SMDS_NodeIteratorPtr | nodeIterator () const |
SMDS_ElemIteratorPtr | nodesIterator () const |
Create an iterator which iterate on nodes owned by the element. More... | |
virtual SMDS_NodeIteratorPtr | nodesIteratorToUNV () const |
virtual, redefined in vtkEdge, vtkFace and vtkVolume classes More... | |
int | WrappedIndex (const int ind) const |
Return a valid node index, fixing the given one if necessary. More... | |
Public Member Functions inherited from SMDS_MeshObject | |
virtual | ~SMDS_MeshObject () |
Static Public Attributes | |
static int | nbNodes =0 |
Protected Member Functions | |
void | AddInverseElement (const SMDS_MeshElement *ME) |
void | ClearInverseElements () |
SMDS_ElemIteratorPtr | elementsIterator (SMDSAbs_ElementType type) const |
bool | emptyInverseElements () |
double * | getCoord () const |
void | init (int id, int meshId, int shapeId=-1, double x=0, double y=0, double z=0) |
void | RemoveInverseElement (const SMDS_MeshElement *parent) |
SMDS_MeshNode () | |
SMDS_MeshNode (int id, int meshId, int shapeId=-1, double x=0, double y=0, double z=0) | |
virtual | ~SMDS_MeshNode () |
Protected Member Functions inherited from SMDS_MeshElement | |
virtual void | init (int id=-1, ShortType meshId=-1, LongType shapeId=0) |
virtual void | Print (std::ostream &OS) const |
void | setId (int id) |
void | setIdInShape (int id) |
void | setShapeId (LongType shapeId) |
void | setVtkId (int vtkId) |
SMDS_MeshElement (int id, ShortType meshId, LongType shapeId=0) | |
SMDS_MeshElement (int ID=-1) | |
Friends | |
class | ObjectPool< SMDS_MeshNode > |
class | SMDS_Mesh |
class | SMDS_VtkFace |
class | SMESHDS_Mesh |
Additional Inherited Members | |
Public Types inherited from SMDS_MeshElement | |
typedef SMDS_StdIterator< const SMDS_MeshNode *, SMDS_ElemIteratorPtr > | iterator |
Protected Attributes inherited from SMDS_MeshElement | |
int | myID |
Element index in vector SMDS_Mesh::myNodes or SMDS_Mesh::myCells. More... | |
int | myIdInShape |
Element index in SMESHDS_SubMesh vector. More... | |
ShortType | myMeshId |
SMDS_Mesh identification in SMESH. More... | |
LongType | myShapeId |
SubShape and SubMesh identification in SMESHDS. More... | |
vtkIdType | myVtkID |
index in vtkUnstructuredGrid More... | |
|
protected |
References nbNodes.
|
protectedvirtual |
References nbNodes, and SMDS_SpacePosition::originSpacePosition().
|
protected |
References SMDS_MeshElement::getVtkId(), SMDS_MeshElement::myMeshId, and SMDS_MeshElement::myVtkID.
Referenced by SMDS_VtkFace::ChangeApex(), and SMDS_Mesh::ChangeElementNodes().
|
protected |
References SMDS_MeshElement::myMeshId, and SMDS_MeshElement::myVtkID.
|
protectedvirtual |
Reimplemented from SMDS_MeshElement.
References SMDS_MeshElement::elementsIterator(), SMDS_MeshElement::myMeshId, and SMDS_MeshElement::myVtkID.
|
protected |
References SMDS_MeshElement::myMeshId, and SMDS_MeshElement::myVtkID.
|
protected |
References SMDS_MeshElement::myMeshId, and SMDS_MeshElement::myVtkID.
|
virtual |
Implements SMDS_MeshElement.
|
virtual |
Implements SMDS_MeshElement.
SMDS_ElemIteratorPtr SMDS_MeshNode::GetInverseElementIterator | ( | SMDSAbs_ElementType | type = SMDSAbs_All | ) | const |
References SMDS_MeshElement::myMeshId, and SMDS_MeshElement::myVtkID.
Referenced by SMESH_MeshEditor::AffectedElemGroupsInRegion(), StdMeshers_Import_1D2D::Compute(), SMESH_MeshEditor::ConvertToQuadratic(), SMESH_MeshEditor::CreateHoleSkin(), SMDS_Mesh::DebugStats(), SMESH_MeshEditor::DoubleNodesInRegion(), SMESH_MeshEditor::ExtrusionAlongTrack(), SMESH_MeshEditor::ExtrusionSweep(), SMDS_Mesh::Find0DElement(), SMDS_Mesh::FindBall(), NETGENPlugin_Internals::findBorderElements(), SMDS_Mesh::FindEdge(), SMDS_Mesh::FindFace(), SMESH_MeshAlgos::FindFaceInSet(), SMESH_MeshEditor::FindMatchingNodes(), StdMeshers_ProjectionUtils::FindMatchingNodesOnFaces(), SMESH_MeshEditor::GetLinkedNodes(), SMESH_MesherHelper::GetMediumPos(), VISCOUS_3D::_Simplex::GetSimplices(), SMESH::Controls::MultiConnection2D::GetValue(), SMESH::Controls::FreeEdges::IsFreeEdge(), SMDS_VolumeTool::IsFreeFace(), SMDS_VolumeTool::IsFreeFaceAdv(), SMESH_MeshEditor::IsMedium(), Prism_3D::TNode::IsNeighbor(), SMESH::Controls::BareBorderFace::IsSatisfy(), SMESH::Controls::OverConstrainedFace::IsSatisfy(), SMESH::Controls::FreeFaces::IsSatisfy(), SMESH::Controls::ConnectedElements::IsSatisfy(), StdMeshers_QuadToTriaAdaptor::MergeAdjacent(), SMESH_MeshEditor::MergeNodes(), StdMeshers_QuadToTriaAdaptor::MergePiramids(), SMDS_Mesh::RemoveFreeElement(), SMESH_MeshEditor::RotationSweep(), SMESH::Controls::CoplanarFaces::SetMesh(), StdMeshers_SegmentLengthAroundVertex::SetParametersByMesh(), SMESH_MeshEditor::SewFreeBorder(), SMESH_MeshEditor::SewSideElements(), StdMeshers_Quadrangle_2D::smooth(), SMESH_MeshEditor::Smooth(), StdMeshers_MEFISTO_2D::StoreResult(), VISCOUS_3D::_Shrinker1D::SwapSrcTgtNodes(), SMESH_MeshEditor::Transform(), and SMESH_MeshEditor::UpdateVolumes().
const SMDS_PositionPtr & SMDS_MeshNode::GetPosition | ( | ) | const |
Referenced by SMESH_MesherHelper::AddTLinks(), NETGENPlugin_NETGEN_3D::Compute(), StdMeshers_Projection_2D::Compute(), SMESH_MeshEditor::ExtrusionAlongTrack(), NETGENPlugin_Mesher::FillNgMesh(), StdMeshers_ProjectionUtils::FindMatchingNodesOnFaces(), VISCOUS_3D::getFaceDir(), SMESH_MesherHelper::GetMediumNode(), SMESH_MesherHelper::GetMediumPos(), SMESH_Algo::GetMeshError(), SMESH_Algo::GetNodeParamOnEdge(), Prism_3D::TNode::GetPositionType(), SMESH_ProxyMesh::GetProxyNode(), SMESH_Algo::GetSortedNodesOnEdge(), StdMeshers_FaceSide::GetUVPtStruct(), SMESH::Controls::BelongToGeom::IsSatisfy(), SMESH_Pattern::Load(), StdMeshers_Penta_3D::LoadIJNodes(), StdMeshers_Penta_3D::MakeNodes(), SMESH_MeshEditor::MergeNodes(), SMESH_MeshEditor::QuadToTri(), SMESH_MeshEditor::Remove(), VISCOUS_3D::_LayerEdge::SetNewLength2d(), and SMESH_MeshEditor::Smooth().
|
virtual |
Return the type of the current element.
Implements SMDS_MeshElement.
Referenced by SMESH_MeshVSLink::GetGeom(), and SMESH_MeshVSLink::GetGeomType().
|
virtual |
Implements SMDS_MeshElement.
void SMDS_MeshNode::GetXYZ | ( | double | xyz[3] | ) | const |
thread safe getting coords
References SMDS_MeshElement::myMeshId, and SMDS_MeshElement::myVtkID.
Referenced by Fem::FemMesh::getNodesByEdge(), Fem::FemMesh::getNodesByFace(), Fem::FemMesh::getNodesBySolid(), Fem::FemMesh::getNodesByVertex(), DriverGMF_Write::Perform(), SMESH_TNodeXYZ::Set(), and SMESH_MeshEditor::Transform().
int SMDS_MeshNode::NbInverseElements | ( | SMDSAbs_ElementType | type = SMDSAbs_All | ) | const |
Count inverse elements of given type.
References SMDS_MeshElement::GetType(), SMDS_MeshElement::myMeshId, and SMDS_MeshElement::myVtkID.
Referenced by VISCOUS_3D::_Shrinker1D::AddEdge(), StdMeshers_Regular_1D::Compute(), StdMeshers_Import_1D::importMesh(), SMESH::Controls::FreeNodes::IsSatisfy(), StdMeshers_QuadToTriaAdaptor::MergePiramids(), and SMESH_MeshEditor::Transform().
|
virtual |
Return The number of nodes owned by the current element.
Reimplemented from SMDS_MeshElement.
|
virtual |
Reimplemented from SMDS_MeshElement.
References SMDS_MeshElement::myID, X(), Y(), and Z().
|
protected |
void SMDS_MeshNode::SetPosition | ( | const SMDS_PositionPtr & | aPos | ) |
References SMDS_SpacePosition::originSpacePosition().
Referenced by SMDS_Mesh::Clear(), StdMeshers_Quadrangle_2D::smooth(), SMESH_MeshEditor::Smooth(), and SMDS_Mesh::~SMDS_Mesh().
void SMDS_MeshNode::setXYZ | ( | double | x, |
double | y, | ||
double | z | ||
) |
References SMDS_MeshElement::myMeshId, and SMDS_MeshElement::myVtkID.
Referenced by StdMeshers_Import_1D::Compute(), StdMeshers_QuadToTriaAdaptor::Compute2ndPart(), StdMeshers_Import_1D2D::Evaluate(), StdMeshers_QuadToTriaAdaptor::MergePiramids(), SMDS_Mesh::MoveNode(), VISCOUS_3D::_LayerEdge::SetNewLength2d(), VISCOUS_3D::_LayerEdge::Smooth(), and VISCOUS_3D::_LayerEdge::SmoothOnEdge().
double SMDS_MeshNode::X | ( | ) | const |
References getCoord().
Referenced by NETGENPlugin_Mesher::AddIntVerticesInFaces(), NETGENPlugin_Mesher::AddSegmentsToMesh(), SMESH_MeshEditor::AffectedElemGroupsInRegion(), SMESH_OctreeNode::buildChildrenData(), SMESH_OctreeNode::buildRootBox(), NETGENPlugin_NETGEN_3D::Compute(), StdMeshers_RadialQuadrangle_1D2D::Compute(), StdMeshers_Quadrangle_2D::computeQuadDominant(), SMESH_MeshEditor::CreateFlatElementsOnFacesGroups(), FemGui::TaskCreateNodeSet::DefineNodes(), SMESH_MeshEditor::DoubleNodes(), Fem::FemVTKTools::exportVTKMesh(), SMESH_MeshAlgos::FaceNormal(), SMESH_OctreeNode::FindCoincidentNodes(), StdMeshers_Penta_3D::FindNodeOnShape(), SMESH_MesherHelper::FixQuadraticElements(), Fem::FemMesh::getBoundBox(), Prism_3D::TNode::GetCoords(), SMESH_MeshVSLink::GetGeom(), SMESH_MesherHelper::GetMediumNode(), SMESH_MeshVSLink::GetNormal(), PathMachineState.MachineState::getPosition(), PathMachineState.MachineState::getState(), SMESH::Controls::Length2D::GetValues(), Fem::FemMesh::getVolume(), StdMeshers_Import_1D::importMesh(), VISCOUS_3D::_Simplex::IsForward(), SMESH_Pattern::Load(), StdMeshers_Penta_3D::MakeNodes(), SMESH_NodeSearcherImpl::MoveNode(), DriverDAT_W_SMDS_Mesh::Perform(), DriverMED_W_SMESHDS_Mesh::Perform(), DriverUNV_W_SMDS_Mesh::Perform(), Print(), SMESH_MeshEditor::RotationSweep(), SMDS_VolumeTool::Set(), StdMeshers_Penta_3D::SetHorizEdgeXYZ(), SMESH_MeshEditor::SewFreeBorder(), StdMeshers_Quadrangle_2D::smooth(), SMESH_MeshEditor::Smooth(), Fem::FemMesh::transformGeometry(), SMESH_OctreeNode::UpdateByMoveNode(), and Fem::FemMesh::writeABAQUS().
double SMDS_MeshNode::Y | ( | ) | const |
References getCoord().
Referenced by NETGENPlugin_Mesher::AddIntVerticesInFaces(), NETGENPlugin_Mesher::AddSegmentsToMesh(), SMESH_MeshEditor::AffectedElemGroupsInRegion(), SMESH_OctreeNode::buildChildrenData(), SMESH_OctreeNode::buildRootBox(), NETGENPlugin_NETGEN_3D::Compute(), StdMeshers_RadialQuadrangle_1D2D::Compute(), StdMeshers_Quadrangle_2D::computeQuadDominant(), SMESH_MeshEditor::CreateFlatElementsOnFacesGroups(), FemGui::TaskCreateNodeSet::DefineNodes(), SMESH_MeshEditor::DoubleNodes(), Fem::FemVTKTools::exportVTKMesh(), SMESH_MeshAlgos::FaceNormal(), SMESH_OctreeNode::FindCoincidentNodes(), StdMeshers_Penta_3D::FindNodeOnShape(), Fem::FemMesh::getBoundBox(), Prism_3D::TNode::GetCoords(), SMESH_MeshVSLink::GetGeom(), SMESH_MesherHelper::GetMediumNode(), SMESH_MeshVSLink::GetNormal(), PathMachineState.MachineState::getPosition(), PathMachineState.MachineState::getState(), SMESH::Controls::Length2D::GetValues(), Fem::FemMesh::getVolume(), StdMeshers_Import_1D::importMesh(), VISCOUS_3D::_Simplex::IsForward(), SMESH_Pattern::Load(), StdMeshers_Penta_3D::MakeNodes(), DriverDAT_W_SMDS_Mesh::Perform(), DriverMED_W_SMESHDS_Mesh::Perform(), DriverUNV_W_SMDS_Mesh::Perform(), Print(), SMESH_MeshEditor::RotationSweep(), SMDS_VolumeTool::Set(), StdMeshers_Penta_3D::SetHorizEdgeXYZ(), SMESH_MeshEditor::SewFreeBorder(), SMESH_MeshEditor::Smooth(), Fem::FemMesh::transformGeometry(), SMESH_OctreeNode::UpdateByMoveNode(), and Fem::FemMesh::writeABAQUS().
double SMDS_MeshNode::Z | ( | ) | const |
References getCoord().
Referenced by PathMachineState.MachineState::addCommand(), NETGENPlugin_Mesher::AddIntVerticesInFaces(), NETGENPlugin_Mesher::AddSegmentsToMesh(), SMESH_MeshEditor::AffectedElemGroupsInRegion(), SMESH_OctreeNode::buildChildrenData(), SMESH_OctreeNode::buildRootBox(), NETGENPlugin_NETGEN_3D::Compute(), StdMeshers_RadialQuadrangle_1D2D::Compute(), StdMeshers_Quadrangle_2D::computeQuadDominant(), SMESH_MeshEditor::CreateFlatElementsOnFacesGroups(), FemGui::TaskCreateNodeSet::DefineNodes(), SMESH_MeshEditor::DoubleNodes(), Fem::FemVTKTools::exportVTKMesh(), SMESH_MeshAlgos::FaceNormal(), SMESH_OctreeNode::FindCoincidentNodes(), StdMeshers_Penta_3D::FindNodeOnShape(), Fem::FemMesh::getBoundBox(), Prism_3D::TNode::GetCoords(), SMESH_MeshVSLink::GetGeom(), SMESH_MesherHelper::GetMediumNode(), SMESH_MeshVSLink::GetNormal(), PathMachineState.MachineState::getPosition(), PathMachineState.MachineState::getState(), SMESH::Controls::Length2D::GetValues(), Fem::FemMesh::getVolume(), StdMeshers_Import_1D::importMesh(), VISCOUS_3D::_Simplex::IsForward(), SMESH_Pattern::Load(), StdMeshers_Penta_3D::MakeNodes(), DriverDAT_W_SMDS_Mesh::Perform(), DriverMED_W_SMESHDS_Mesh::Perform(), DriverUNV_W_SMDS_Mesh::Perform(), Print(), SMESH_MeshEditor::RotationSweep(), SMDS_VolumeTool::Set(), StdMeshers_Penta_3D::SetHorizEdgeXYZ(), SMESH_MeshEditor::SewFreeBorder(), SMESH_MeshEditor::Smooth(), Fem::FemMesh::transformGeometry(), SMESH_OctreeNode::UpdateByMoveNode(), and Fem::FemMesh::writeABAQUS().
|
friend |
|
friend |
|
friend |
|
static |
Referenced by SMDS_MeshNode(), and ~SMDS_MeshNode().