Version: 6.3.1
Public Types | Public Member Functions | Static Public Attributes | Protected Member Functions | Protected Attributes | Private Attributes | Friends

SMDS_MeshNode Class Reference

#include <SMDS_MeshNode.hxx>

Inheritance diagram for SMDS_MeshNode:
Inheritance graph
[legend]

Public Types

typedef SMDS_StdIterator
< const SMDS_MeshNode
*, SMDS_ElemIteratorPtr
iterator

Public Member Functions

void Print (std::ostream &OS) const
double X () const
double Y () const
double Z () const
SMDS_ElemIteratorPtr GetInverseElementIterator (SMDSAbs_ElementType type=SMDSAbs_All) const
int NbInverseElements (SMDSAbs_ElementType type=SMDSAbs_All) const
 Count inverse elements of given type.
const SMDS_PositionPtrGetPosition () const
SMDSAbs_ElementType GetType () const
 Return the type of the current element.
virtual vtkIdType GetVtkType () const
SMDSAbs_EntityType GetEntityType () const
 Return type of entity.
int NbNodes () const
 Return The number of nodes owned by the current element.
void SetPosition (const SMDS_PositionPtr &aPos)
void setXYZ (double x, double y, double z)
SMDS_ElemIteratorPtr nodesIterator () const
 Create an iterator which iterate on nodes owned by the element.
SMDS_ElemIteratorPtr edgesIterator () const
 Create an iterator which iterate on edges linked with or owned by the element.
SMDS_ElemIteratorPtr facesIterator () const
 Create an iterator which iterate on faces linked with or owned by the element.
virtual SMDS_ElemIteratorPtr nodesIteratorToUNV () const
 virtual, redefined in vtkEdge, vtkFace and vtkVolume classes
virtual SMDS_ElemIteratorPtr interlacedNodesElemIterator () const
 virtual, redefined in vtkEdge, vtkFace and vtkVolume classes
iterator begin_nodes () const
iterator end_nodes () const
virtual int NbEdges () const
 Return the number of edges owned by or linked with the current element.
virtual int NbFaces () const
 Return the number of faces owned by or linked with the current element.
int GetID () const
virtual bool IsPoly () const
virtual bool IsQuadratic () const
virtual bool IsMediumNode (const SMDS_MeshNode *node) const
virtual int NbCornerNodes () const
 Return number of nodes excluding medium ones.
virtual const SMDS_MeshNodeGetNode (const int ind) const
 Return node by its index.
const SMDS_MeshNodeGetNodeWrap (const int ind) const
 Return node by its index.
virtual bool IsValidIndex (const int ind) const
 Return true if index of node is valid (0 <= ind < NbNodes())
int WrappedIndex (const int ind) const
 Return a valid node index, fixing the given one if necessary.
int GetNodeIndex (const SMDS_MeshNode *node) const
 Check if a node belongs to the element.
ShortType getMeshId () const
LongType getshapeId () const
int getIdInShape () const
int getVtkId () const

Static Public Attributes

static int nbNodes = 0

Protected Member Functions

 SMDS_MeshNode ()
 SMDS_MeshNode (int id, int meshId, int shapeId=-1, double x=0, double y=0, double z=0)
virtual ~SMDS_MeshNode ()
void init (int id, int meshId, int shapeId=-1, double x=0, double y=0, double z=0)
void setVtkId (int vtkId)
double * getCoord () const
void AddInverseElement (const SMDS_MeshElement *ME)
void RemoveInverseElement (const SMDS_MeshElement *parent)
void ClearInverseElements ()
bool emptyInverseElements ()
SMDS_ElemIteratorPtr elementsIterator (SMDSAbs_ElementType type) const
void setId (int id)
void setShapeId (LongType shapeId)
void setIdInShape (int id)
virtual void init (int id=-1, ShortType meshId=-1, LongType shapeId=0)

Protected Attributes

int myID
 Element index in vector SMDS_Mesh.myNodes or SMDS_Mesh.myCells.
int myVtkID
 index in vtkUnstructuredGrid
ShortType myMeshId
 SMDS_Mesh identification in SMESH.
LongType myShapeId
 SubShape and SubMesh identification in SMESHDS.
int myIdInShape
 Element index in SMESHDS_SubMesh vector.

Private Attributes

SMDS_PositionPtr myPosition

Friends

class SMESHDS_Mesh
class SMDS_Mesh
class ObjectPool< SMDS_MeshNode >
class SMDS_VtkFace
bool operator< (const SMDS_MeshNode &e1, const SMDS_MeshNode &e2)
 To be used with STL set.
class SMESHDS_SubMesh
class SMDS_MeshElementIDFactory
std::ostream & operator<< (std::ostream &OS, const SMDS_MeshElement *)
bool SMDS_MeshElementIDFactory::BindID (int ID, SMDS_MeshElement *elem)

Detailed Description

Definition at line 36 of file SMDS_MeshNode.hxx.


Member Typedef Documentation

Definition at line 72 of file SMDS_MeshElement.hxx.


Constructor & Destructor Documentation

SMDS_MeshNode::SMDS_MeshNode ( ) [protected]

Definition at line 47 of file SMDS_MeshNode.cxx.

References nbNodes.

SMDS_MeshNode::SMDS_MeshNode ( int  id,
int  meshId,
int  shapeId = -1,
double  x = 0,
double  y = 0,
double  z = 0 
) [protected]

Definition at line 54 of file SMDS_MeshNode.cxx.

References init(), and nbNodes.

                                                                                         :
  SMDS_MeshElement(id, meshId, shapeId),
  myPosition(SMDS_SpacePosition::originSpacePosition())
{
  nbNodes++;
  init(id, meshId, shapeId, x, y ,z);
}
SMDS_MeshNode::~SMDS_MeshNode ( ) [protected, virtual]

Member Function Documentation

void SMDS_MeshNode::AddInverseElement ( const SMDS_MeshElement ME) [protected]

Definition at line 316 of file SMDS_MeshNode.cxx.

References SMDS_Mesh._meshList, SMDS_MeshElement.getVtkId(), ex11_grid3partition.grid, SMDS_MeshElement.myMeshId, and SMDS_MeshElement.myVtkID.

Referenced by SMDS_VtkFace.ChangeApex().

{
  const SMDS_MeshCell *cell = dynamic_cast<const SMDS_MeshCell*> (ME);
  assert(cell);
  SMDS_UnstructuredGrid* grid = SMDS_Mesh::_meshList[myMeshId]->getGrid();
  vtkCellLinks *Links = grid->GetCellLinks();
  Links->ResizeCellList(myVtkID, 1);
  Links->AddCellReference(cell->getVtkId(), myVtkID);
}
iterator SMDS_MeshElement.begin_nodes ( ) const [inherited]
void SMDS_MeshNode::ClearInverseElements ( ) [protected]

Definition at line 330 of file SMDS_MeshNode.cxx.

References SMDS_Mesh._meshList, SMDS_MeshElement.myMeshId, and SMDS_MeshElement.myVtkID.

{
  SMDS_Mesh::_meshList[myMeshId]->getGrid()->ResizeCellList(myVtkID, 0);
}
SMDS_ElemIteratorPtr SMDS_MeshElement::edgesIterator ( ) const [inherited]

Create an iterator which iterate on edges linked with or owned by the element.

This method call elementsIterator().

Definition at line 80 of file SMDS_MeshElement.cxx.

References SMDSAbs_Edge.

Referenced by SMDS_Mesh.addChildrenWithNodes().

SMDS_ElemIteratorPtr SMDS_MeshNode::elementsIterator ( SMDSAbs_ElementType  type) const [protected, virtual]

Reimplemented from SMDS_MeshElement.

Definition at line 253 of file SMDS_MeshNode.cxx.

References SMDS_Mesh._meshList, SMDS_MeshElement.myMeshId, SMDS_MeshElement.myVtkID, and SMDSAbs_Node.

{
  if(type==SMDSAbs_Node)
    return SMDS_MeshElement::elementsIterator(SMDSAbs_Node); 
  else
  {
    vtkCellLinks::Link l = SMDS_Mesh::_meshList[myMeshId]->getGrid()->GetCellLinks()->GetLink(myVtkID);
    return SMDS_ElemIteratorPtr(new SMDS_MeshNode_MyIterator(SMDS_Mesh::_meshList[myMeshId], l.cells, l.ncells, type));
  }
}
bool SMDS_MeshNode::emptyInverseElements ( ) [protected]

Definition at line 335 of file SMDS_MeshNode.cxx.

References SMDS_Mesh._meshList, SMDS_MeshElement.myMeshId, and SMDS_MeshElement.myVtkID.

{
  vtkCellLinks::Link l = SMDS_Mesh::_meshList[myMeshId]->getGrid()->GetCellLinks()->GetLink(myVtkID);
  return (l.ncells == 0);
}
iterator SMDS_MeshElement.end_nodes ( ) const [inherited]
SMDS_ElemIteratorPtr SMDS_MeshElement::facesIterator ( ) const [inherited]

Create an iterator which iterate on faces linked with or owned by the element.

This method call elementsIterator().

Definition at line 89 of file SMDS_MeshElement.cxx.

References SMDSAbs_Face.

Referenced by SMDS_Mesh.addChildrenWithNodes(), and SMESH.Controls.ManifoldPart.getFacesByLink().

double * SMDS_MeshNode::getCoord ( ) const [protected]

Definition at line 269 of file SMDS_MeshNode.cxx.

References SMDS_Mesh._meshList, SMDS_MeshElement.myMeshId, and SMDS_MeshElement.myVtkID.

Referenced by X(), Y(), and Z().

{
  return SMDS_Mesh::_meshList[myMeshId]->getGrid()->GetPoint(myVtkID);
}
SMDSAbs_EntityType SMDS_MeshNode.GetEntityType ( ) const [virtual]

Return type of entity.

Implements SMDS_MeshElement.

Definition at line 53 of file SMDS_MeshNode.hxx.

References SMDSEntity_Node.

{return SMDSEntity_Node;}
int SMDS_MeshElement.GetID ( ) const [inherited]

Definition at line 79 of file SMDS_MeshElement.hxx.

Referenced by SMESHDS_Mesh.Add0DElement(), SMESH_MeshEditor_i.Add0DElement(), SMESHDS_Mesh.Add0DElementWithID(), SMESHDS_Mesh.AddEdge(), SMESH_MeshEditor_i.AddEdge(), SMESHDS_Mesh.AddEdgeWithID(), SMESHDS_SubMesh.AddElement(), SMESHDS_Mesh.AddFace(), SMESH_MeshEditor_i.AddFace(), SMESHDS_Mesh.AddFaceWithID(), SMESHDS_SubMesh.AddNode(), SMESHDS_Mesh.AddNode(), SMESH_MeshEditor_i.AddNode(), SMESHDS_Mesh.AddNodeWithID(), SMESHDS_Mesh.AddPolygonalFace(), SMESH_MeshEditor_i.AddPolygonalFace(), SMESHDS_Mesh.AddPolyhedralVolume(), SMESH_MeshEditor_i.AddPolyhedralVolume(), SMESH_MeshEditor_i.AddPolyhedralVolumeByFaces(), SMESHDS_Mesh.AddVolume(), SMESH_MeshEditor_i.AddVolume(), SMESHDS_Mesh.AddVolumeWithID(), SMESH_VisualObjDef.buildElemPrs(), SMESHDS_Mesh.ChangeElementNodes(), SMESHDS_Mesh.ChangePolyhedronNodes(), SMESHGUI_CreatePolyhedralVolumeDlg.checkEditLine(), SMESH_MesherHelper.CheckNodeU(), SMDS_Mesh.Clear(), collectMeshInfo(), StdMeshers_Projection_3D.Compute(), SMESH_Gen_i.ConcatenateCommon(), SMESHDS_GroupBase.Contains(), SMESH_MeshEditor.convertElemToQuadratic(), SMESH_MeshEditor.ConvertFromQuadratic(), SMESH_MeshEditor.ConvertToQuadratic(), SMESH_Gen_i.CopyMesh(), SMESH_Mesh_i.CreateDimGroup(), SMESH_MeshEditor.CreateFlatElementsOnFacesGroups(), SMESH_VisualObjDef.createPoints(), SMESHGUI_CuttingOfQuadsDlg.displayPreview(), SMESHGUI_CreatePolyhedralVolumeDlg.displaySimulation(), SMESH_MeshEditor.DoubleNodesOnGroupBoundaries(), StdMeshers_PrismAsBlock.THorizontalEdgeAdaptor.dumpNodes(), enlargeBoundingBox(), FillSequence(), SMESH_OctreeNode.FindCoincidentNodes(), SMESH.Controls.ManifoldPart.findConnected(), SMESH_Mesh_i.FindElementByNodes(), SMESH_MeshEditor.FindFreeBorder(), SMESH_MeshEditor.FindMatchingNodes(), SMESH_MeshEditor.FindShape(), findTriangles(), SMESH.Controls.FreeEdges.GetBoreders(), SMESH_subMesh_i.GetElementsByType(), SMESH_Mesh_i.GetElementsByType(), SMESH_Mesh_i.GetElemNode(), LinkID_Gen.GetLinkID(), SMESH_Mesh_i.GetNodeInverseElements(), getNodeNodeDistance(), SMESH_Mesh_i.GetSubMeshNodesId(), SMESH.Controls.MultiConnection2D.GetValue(), SMESH.Controls.MultiConnection2D.GetValues(), SMESH.Controls.Length2D.GetValues(), SMDS_VolumeTool.ID(), SMESHGUI_TreeElemInfo.information(), SMESHGUI_SimpleElemInfo.information(), SMESH.Controls.FreeEdges.IsFreeEdge(), SMESH.Controls.ManifoldPart.isInPlane(), SMESH.Controls.CoplanarFaces.IsSatisfy(), SMESH_ProxyMesh.IsTemporary(), VISCOUS._ViscousBuilder.makeGroupOfLE(), StdMeshers_Penta_3D.MakeMeshOnFxy1(), StdMeshers_Penta_3D.MakeNodes(), StdMeshers_Penta_3D.MakeVolumeMesh(), SMESH_MeshEditor_i.MoveClosestNodeToPoint(), SMESHDS_Mesh.MoveNode(), SMESHGUI_ElemInfo.nodeConnectivity(), SMESHGUI_WhatIsDlg.onTextChange(), SMESHGUI_TranslationDlg.onTextChange(), SMESHGUI_SymmetryDlg.onTextChange(), SMESHGUI_SingleEditDlg.onTextChange(), SMESHGUI_SewingDlg.onTextChange(), SMESHGUI_ScaleDlg.onTextChange(), SMESHGUI_RotationDlg.onTextChange(), SMESHGUI_RevolutionDlg.onTextChange(), SMESHGUI_ExtrusionAlongPathDlg.onTextChange(), SMESHGUI_CreatePolyhedralVolumeDlg.onTextChange(), SMESHGUI_MeshPatternDlg.onTextChanged(), TIDCompare.operator()(), TNode.operator<(), operator<<(), DriverUNV_W_SMDS_Mesh.Perform(), DriverMED_W_SMESHDS_Mesh.Perform(), DriverDAT_W_SMDS_Mesh.Perform(), SMDS_VtkVolume.Print(), SMDS_QuadraticEdge.Print(), SMDS_Mesh0DElement.Print(), SMDS_FaceOfEdges.Print(), SMESH.Controls.ElementsOnShape.process(), SMESH.Controls.ElementsOnSurface.process(), SMESH.Controls.ManifoldPart.process(), StdMeshers_Prism_3D.projectBottomToTop(), SMESHDS_Mesh.RemoveElement(), SMESHDS_Mesh.RemoveFreeElement(), SMDS_Mesh.RemoveFreeElement(), SMESHDS_Mesh.RemoveFreeNode(), SMESHDS_Mesh.RemoveNode(), SMESH_MeshEditor.removeQuadElem(), SMESH_ProxyMesh.removeTmpElement(), SMDS_Mesh.Renumber(), SMESH_Gen_i.Save(), SMESHGUI_WhatIsDlg.SelectionIntoArgument(), VISCOUS._ViscousBuilder.setEdgeData(), SMDS_Mesh0DElement.SMDS_Mesh0DElement(), SMESH_TLink.SMESH_TLink(), StdMeshers_MEFISTO_2D.StoreResult(), SMESH_MeshEditor_i.storeResult(), SMESH_MeshEditor.sweepElement(), and SMDS_Mesh.~SMDS_Mesh().

{ return myID; };
int SMDS_MeshElement.getIdInShape ( ) const [inherited]
SMDS_ElemIteratorPtr SMDS_MeshNode::GetInverseElementIterator ( SMDSAbs_ElementType  type = SMDSAbs_All) const

Definition at line 197 of file SMDS_MeshNode.cxx.

References SMDS_Mesh._meshList, SMDS_MeshElement.myMeshId, and SMDS_MeshElement.myVtkID.

Referenced by VISCOUS._ViscousBuilder.addBoundaryElements(), centroidalSmooth(), StdMeshers_QuadToTriaAdaptor.Compute2ndPart(), SMESH.Controls.LyingOnGeom.Contains(), SMESH_MeshEditor.ConvertToQuadratic(), SMDS_Mesh.DebugStats(), SMESH_MeshEditor.DoubleNodesInRegion(), SMDS_Mesh.Find0DElement(), SMDS_Mesh.FindEdge(), SMESH_ElementSearcherImpl.FindElementsByPoint(), SMDS_Mesh.FindFace(), SMESH_MeshEditor.FindFaceInSet(), SMESH_MeshEditor.FindMatchingNodes(), StdMeshers_ProjectionUtils.FindMatchingNodesOnFaces(), VISCOUS._ViscousBuilder.findNeiborsOnEdge(), findTriangles(), SMESH_MesherHelper.FixQuadraticElements(), getExclusiveNodes(), getFinitElements(), SMESH_MeshEditor.GetLinkedNodes(), SMESH_Mesh_i.GetNodeInverseElements(), VISCOUS._ViscousBuilder.getSimplices(), SMESH_Algo.GetSortedNodesOnEdge(), SMESH.Controls.MultiConnection2D.GetValue(), SMESH.Controls.FreeEdges.IsFreeEdge(), SMDS_VolumeTool.IsFreeFace(), SMESH_MesherHelper.IsMedium(), TNode.IsNeighbor(), SMESH.Controls.CoplanarFaces.IsSatisfy(), SMESH.Controls.FreeFaces.IsSatisfy(), SMESH.Controls.OverConstrainedFace.IsSatisfy(), SMESH.Controls.BareBorderFace.IsSatisfy(), SMESH_Pattern.makePolyElements(), SMESH_MeshEditor.makeWalls(), StdMeshers_QuadToTriaAdaptor.MergeAdjacent(), StdMeshers_QuadToTriaAdaptor.MergePiramids(), SMESHGUI_ElemInfo.nodeConnectivity(), VISCOUS._ViscousBuilder.prepareEdgeToShrink(), SMDS_Mesh.RemoveFreeElement(), SMESHGUI_WhatIsDlg.SelectionIntoArgument(), VISCOUS._ViscousBuilder.setEdgeData(), StdMeshers_SegmentLengthAroundVertex.SetParametersByMesh(), SMESH_MeshEditor.SewFreeBorder(), VISCOUS._ViscousBuilder.shrink(), StdMeshers_Quadrangle_2D.Smooth(), StdMeshers_MEFISTO_2D.StoreResult(), VISCOUS._Shrinker1D.SwapSrcTgtNodes(), SMESH_MeshEditor.Transform(), and SMESH_MeshEditor.UpdateVolumes().

{
    vtkCellLinks::Link l = SMDS_Mesh::_meshList[myMeshId]->getGrid()->GetCellLinks()->GetLink(myVtkID);
    //MESSAGE("myID " << myID << " ncells " << l.ncells);
    return SMDS_ElemIteratorPtr(new SMDS_MeshNode_MyInvIterator(SMDS_Mesh::_meshList[myMeshId], l.cells, l.ncells, type));
}
ShortType SMDS_MeshElement.getMeshId ( ) const [inherited]

Definition at line 143 of file SMDS_MeshElement.hxx.

Referenced by SMDS_VolumeTool.GetSize(), and SMESH.Controls.AspectRatio3D.GetValue().

{return myMeshId; }
const SMDS_MeshNode * SMDS_MeshElement::GetNode ( const int  ind) const [virtual, inherited]

Return node by its index.

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

Reimplemented in SMDS_FaceOfEdges, SMDS_FaceOfNodes, SMDS_LinearEdge, SMDS_Mesh0DElement, SMDS_PolygonalFaceOfNodes, SMDS_PolyhedralVolumeOfNodes, SMDS_QuadraticFaceOfNodes, SMDS_QuadraticVolumeOfNodes, SMDS_VolumeOfNodes, SMDS_VtkEdge, SMDS_VtkFace, SMDS_VtkVolume, and VISCOUS.TmpMeshFace.

Definition at line 225 of file SMDS_MeshElement.cxx.

References SMESH_test.ind.

Referenced by _MyEdgeIterator._MyEdgeIterator(), SMESH_MesherHelper.AddTLinks(), StdMeshers_QuadToTriaAdaptor.CheckIntersection(), StdMeshers_QuadToTriaAdaptor.Compute(), StdMeshers_Projection_3D.Compute(), StdMeshers_Hexa_3D.Compute(), StdMeshers_QuadToTriaAdaptor.Compute2ndPart(), SMESH_MeshEditor.ConvertFromQuadratic(), SMESH_MeshEditor.ConvertToQuadratic(), SMESH_Algo.FaceNormal(), SMESH_MeshEditor.FindFaceInSet(), SMESH_MeshEditor.FindMatchingNodes(), StdMeshers_ProjectionUtils.FindMatchingNodesOnFaces(), VISCOUS._ViscousBuilder.findNeiborsOnEdge(), SMESH_ElementSearcherImpl.findOuterBoundary(), SMESH_MesherHelper.FixQuadraticElements(), SMESH_Algo.GetCommonNodes(), SMESH_Mesh_i.GetElemNode(), SMESH_ElementSearcherImpl.getIntersParamOnLine(), SMDS_VtkFace.GetNode(), SMDS_VtkEdge.GetNode(), VISCOUS._ViscousBuilder.getSimplices(), getTriangles(), SMESH_MesherHelper.IsQuadraticSubMesh(), SMESH.Controls.CoplanarFaces.IsSatisfy(), VISCOUS._ViscousBuilder.limitStepSize(), SMESH_Pattern.Load(), _QuadFaceGrid.LoadGrid(), VISCOUS._ViscousBuilder.makeGroupOfLE(), VISCOUS._ViscousBuilder.makeLayer(), VISCOUS._ViscousBuilder.MakeN2NMap(), StdMeshers_Penta_3D.MakeVolumeMesh(), StdMeshers_QuadToTriaAdaptor.MergeAdjacent(), StdMeshers_QuadToTriaAdaptor.MergePiramids(), DriverMED_W_SMESHDS_Mesh.Perform(), SMESH_Gen_i.Precompute(), StdMeshers_QuadToTriaAdaptor.Preparation(), VISCOUS._ViscousBuilder.prepareEdgeToShrink(), StdMeshers_Prism_3D.projectBottomToTop(), StdMeshers_SegmentLengthAroundVertex.SetParametersByMesh(), and StdMeshers_Quadrangle_2D.Smooth().

{
  if ( ind >= 0 ) {
    SMDS_ElemIteratorPtr it = nodesIterator();
    for ( int i = 0; i < ind; ++i )
      it->next();
    if ( it->more() )
      return static_cast<const SMDS_MeshNode*> (it->next());
  }
  return 0;
}
int SMDS_MeshElement::GetNodeIndex ( const SMDS_MeshNode node) const [inherited]
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 116 of file SMDS_MeshElement.hxx.

Referenced by _MyEdgeIterator._MyEdgeIterator(), SMESH_MeshEditor.GetLinkedNodes(), and SMESH_MeshEditor.makeWalls().

{ return GetNode( WrappedIndex( ind )); }
const SMDS_PositionPtr & SMDS_MeshNode::GetPosition ( ) const
LongType SMDS_MeshElement.getshapeId ( ) const [inherited]
SMDSAbs_ElementType SMDS_MeshNode::GetType ( ) const [virtual]

Return the type of the current element.

Implements SMDS_MeshElement.

Definition at line 302 of file SMDS_MeshNode.cxx.

References SMDSAbs_Node.

{
        return SMDSAbs_Node;
}
int SMDS_MeshElement.getVtkId ( ) const [inherited]
vtkIdType SMDS_MeshNode::GetVtkType ( ) const [virtual]

Implements SMDS_MeshElement.

Definition at line 307 of file SMDS_MeshNode.cxx.

{
  return VTK_VERTEX;
}
void SMDS_MeshElement::init ( int  id = -1,
ShortType  meshId = -1,
LongType  shapeId = 0 
) [protected, virtual, inherited]

Definition at line 48 of file SMDS_MeshElement.cxx.

Referenced by SMDS_VtkFace.init(), SMDS_VtkEdge.init(), and SMDS_VtkFace.initPoly().

{
  myID = id;
  myMeshId = meshId;
  myShapeId = shapeId;
  myIdInShape = -1;
}
void SMDS_MeshNode::init ( int  id,
int  meshId,
int  shapeId = -1,
double  x = 0,
double  y = 0,
double  z = 0 
) [protected]

Definition at line 62 of file SMDS_MeshNode.cxx.

References SMDS_Mesh._meshList, SMDS_Mesh.chunkSize, SMDS_Mesh.getGrid(), SMDS_CellLinks.GetLinksSize(), SMDS_UnstructuredGrid.GetPoints(), ex11_grid3partition.grid, PAL_MESH_041_mesh.mesh, SMDS_MeshElement.myMeshId, SMDS_MeshElement.myVtkID, and SMDS_CellLinks.ResizeL().

Referenced by SMDS_Mesh.AddNodeWithID(), and SMDS_MeshNode().

{
  SMDS_MeshElement::init(id, meshId, shapeId);
  myVtkID = id -1;
  assert(myVtkID >= 0);
  //MESSAGE("Node " << myID << " " << myVtkID << " (" << x << ", " << y << ", " << z << ")");
  SMDS_Mesh* mesh = SMDS_Mesh::_meshList[myMeshId];
  SMDS_UnstructuredGrid * grid = mesh->getGrid();
  vtkPoints *points = grid->GetPoints();
  points->InsertPoint(myVtkID, x, y, z);
  SMDS_CellLinks *cellLinks = dynamic_cast<SMDS_CellLinks*>(grid->GetCellLinks());
  assert(cellLinks);
  if (myVtkID >= cellLinks->GetLinksSize())
          cellLinks->ResizeL(myVtkID+SMDS_Mesh::chunkSize);
}
SMDS_ElemIteratorPtr SMDS_MeshElement::interlacedNodesElemIterator ( ) const [virtual, inherited]

virtual, redefined in vtkEdge, vtkFace and vtkVolume classes

Reimplemented in SMDS_QuadraticEdge, SMDS_QuadraticFaceOfNodes, SMDS_VtkEdge, SMDS_VtkFace, and SMDS_VtkVolume.

Definition at line 188 of file SMDS_MeshElement.cxx.

References MESSAGE.

Referenced by SMESH.Controls.MultiConnection2D.GetValues(), and SMESH_MeshEditor.isOut().

{
  MESSAGE("Iterator not implemented");
  return SMDS_ElemIteratorPtr((SMDS_ElemIterator*) NULL);
}
bool SMDS_MeshElement::IsMediumNode ( const SMDS_MeshNode node) const [virtual, inherited]
virtual bool SMDS_MeshElement.IsPoly ( ) const [virtual, inherited]
bool SMDS_MeshElement::IsQuadratic ( ) const [virtual, inherited]

Reimplemented in SMDS_QuadraticEdge, SMDS_QuadraticFaceOfNodes, SMDS_QuadraticVolumeOfNodes, SMDS_VtkEdge, SMDS_VtkFace, and SMDS_VtkVolume.

Definition at line 237 of file SMDS_MeshElement.cxx.

Referenced by SMESH_MesherHelper.AddTLinks(), centroidalSmooth(), StdMeshers_QuadToTriaAdaptor.Compute(), StdMeshers_Projection_3D.Compute(), SMESH_MeshEditor.convertElemToQuadratic(), SMESH_MeshEditor.ConvertFromQuadratic(), SMESH_MeshEditor.ConvertToQuadratic(), SMESH_MeshEditor.CreateFlatElementsOnFacesGroups(), StdMeshers_Projection_3D.Evaluate(), SMESH_MeshEditor.ExtrusionSweep(), SMESH_Algo.FaceNormal(), SMESH_MeshEditor.FindFaceInSet(), SMESH_MeshEditor.FindFreeBorder(), SMESH_MeshEditor.FindMatchingNodes(), StdMeshers_ProjectionUtils.FindMatchingNodesOnFaces(), SMESH_ElementSearcherImpl.findOuterBoundary(), SMESH_MesherHelper.FixQuadraticElements(), getAngle(), SMESH.Controls.FreeEdges.GetBoreders(), SMESH_ElementSearcherImpl.getIntersParamOnLine(), SMESH_MeshEditor.GetLinkedNodes(), SMESH.Controls.NumericalFunctor.GetPoints(), SMESH.Controls.AspectRatio3D.GetValue(), SMESH.Controls.MultiConnection2D.GetValues(), SMESH.Controls.Length2D.GetValues(), SMESHGUI_TreeElemInfo.information(), SMESHGUI_SimpleElemInfo.information(), StdMeshers_PrismAsBlock.Init(), SMESH_MeshEditor.InsertNodesIntoLink(), SMDS_VolumeTool.IsLinked(), SMESHGUI_TriangleFilter.IsObjValid(), SMESHGUI_QuadrangleFilter.IsObjValid(), SMESH_MeshEditor.isOut(), SMESH_Mesh_i.IsQuadratic(), SMESH_MesherHelper.IsQuadraticSubMesh(), SMESH.Controls.ElemGeomType.IsSatisfy(), SMESH.Controls.LinearOrQuadratic.IsSatisfy(), SMESH.Controls.FreeEdges.IsSatisfy(), SMESHGUI_TriangleFilter.IsValid(), SMESHGUI_QuadrangleFilter.IsValid(), SMESH.SMESH_MeshEditor.Make2DMeshFrom3D(), StdMeshers_Penta_3D.MakeBlock(), SMESH_MeshEditor.MakeExtrElements(), SMESH_MeshEditor.makeWalls(), DriverUNV_W_SMDS_Mesh.Perform(), StdMeshers_Prism_3D.projectBottomToTop(), SMESH_MeshEditor.QuadToTri(), SMDS_MeshInfo.RemoveEdge(), SMESH_MeshEditor.removeQuadElem(), SMESHGUI_WhatIsDlg.SelectionIntoArgument(), SMESH_MeshEditor.SewFreeBorder(), SMESH_MeshEditor.sweepElement(), and SMESH_MeshEditor.Transform().

{
  return false;
}
bool SMDS_MeshElement::IsValidIndex ( const int  ind) const [virtual, inherited]

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

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

Definition at line 220 of file SMDS_MeshElement.cxx.

{
  return ( ind>-1 && ind<NbNodes() );
}
int SMDS_MeshElement::NbCornerNodes ( ) const [virtual, inherited]
int SMDS_MeshElement::NbEdges ( ) const [virtual, inherited]

Return the number of edges owned by or linked with the current element.

Reimplemented in SMDS_FaceOfEdges, SMDS_FaceOfNodes, SMDS_LinearEdge, SMDS_Mesh0DElement, SMDS_PolygonalFaceOfNodes, SMDS_PolyhedralVolumeOfNodes, SMDS_QuadraticFaceOfNodes, SMDS_QuadraticVolumeOfNodes, SMDS_VolumeOfNodes, SMDS_VtkEdge, SMDS_VtkFace, and SMDS_VtkVolume.

Definition at line 112 of file SMDS_MeshElement.cxx.

Referenced by SMESH_Mesh_i.ElemNbEdges(), and SMDS_FaceOfEdges.Print().

{
        int nbedges=0;
        SMDS_ElemIteratorPtr it=edgesIterator();
        while(it->more())
        {
                it->next();
                nbedges++;
        }
        return nbedges;
}
int SMDS_MeshElement::NbFaces ( ) const [virtual, inherited]

Return the number of faces owned by or linked with the current element.

Reimplemented in SMDS_FaceOfEdges, SMDS_FaceOfNodes, SMDS_PolygonalFaceOfNodes, SMDS_PolyhedralVolumeOfNodes, SMDS_QuadraticFaceOfNodes, SMDS_QuadraticVolumeOfNodes, SMDS_VolumeOfFaces, SMDS_VolumeOfNodes, SMDS_VtkFace, and SMDS_VtkVolume.

Definition at line 127 of file SMDS_MeshElement.cxx.

Referenced by SMESH_Mesh_i.ElemNbFaces(), and SMDS_VolumeTool.Set().

{
        int nbfaces=0;
        SMDS_ElemIteratorPtr it=facesIterator();
        while(it->more())
        {
                it->next();
                nbfaces++;
        }
        return nbfaces;
}
int SMDS_MeshNode::NbInverseElements ( SMDSAbs_ElementType  type = SMDSAbs_All) const
int SMDS_MeshNode::NbNodes ( ) const [virtual]

Return The number of nodes owned by the current element.

Reimplemented from SMDS_MeshElement.

Definition at line 264 of file SMDS_MeshNode.cxx.

{
        return 1;
}
SMDS_ElemIteratorPtr SMDS_MeshElement::nodesIterator ( ) const [inherited]

Create an iterator which iterate on nodes owned by the element.

This method call elementsIterator().

Definition at line 71 of file SMDS_MeshElement.cxx.

References SMDSAbs_Node.

Referenced by SMDS_Mesh.addChildrenWithNodes(), SMESH_MeshEditor_i.AddPolyhedralVolumeByFaces(), SMESH_Pattern.Apply(), SMESH_Mesh_i.BaryCenter(), SMESH_VisualObjDef.buildElemPrs(), centroidalSmooth(), SMDS_Mesh.ChangeElementNodes(), SMDS_Mesh.ChangePolyhedronNodes(), StdMeshers_QuadToTriaAdaptor.Compute2ndPart(), SMESH_Gen_i.ConcatenateCommon(), SMESH_MeshEditor.ConvertToQuadratic(), SMESH_Gen_i.CopyMesh(), SMESH_Mesh_i.CreateDimGroup(), SMESH_Pattern.createElements(), SMESH_MeshEditor.CreateFlatElementsOnFacesGroups(), SMESHGUI_CuttingOfQuadsDlg.displayPreview(), SMESHGUI_CreatePolyhedralVolumeDlg.displaySimulation(), SMESH_MeshEditor.DoubleNodes(), SMESH_MeshEditor.doubleNodes(), SMESH_MeshEditor.DoubleNodesInRegion(), enlargeBoundingBox(), SMESH_MeshEditor.ExtrusionSweep(), SMDS_Mesh.FindEdge(), SMDS_Mesh.FindFace(), SMESH_MeshEditor.FindFreeBorder(), SMESHGUI_MergeDlg.FindGravityCenter(), SMESH_MeshEditor.FindShape(), getAngle(), SMESH.Controls.FreeEdges.GetBoreders(), SMESH_VisualObjDef.GetEdgeNodes(), SMESH_subMesh_i.GetElementsByType(), getFinitElements(), SMESH_MeshEditor.GetLinkedNodes(), getLinks(), getNodesFromElems(), GetNodesFromTwoTria(), SMESH.getNormale(), SMESH_subMesh_i.GetNumberOfNodes(), SMESH.Controls.NumericalFunctor.GetPoints(), getQuadrangleNodes(), SMESH_Mesh_i.GetSubMeshNodesId(), SMESH_ElementSearcherImpl.getTolerance(), SMESH.Controls.MultiConnection2D.GetValue(), SMESH.Controls.MultiConnection2D.GetValues(), SMESH.Controls.Length2D.GetValues(), SMESHGUI_ElemInfo.gravityCenter(), SMESHGUI_TreeElemInfo.information(), SMESHGUI_SimpleElemInfo.information(), SMESH_MeshEditor.InsertNodesIntoLink(), SMESH_MeshEditor.InverseDiag(), SMESH_MeshEditor.isOut(), SMESH_Algo.IsReversedSubMesh(), SMESH.Controls.FreeFaces.IsSatisfy(), SMESH.Controls.FreeEdges.IsSatisfy(), StdMeshers_Penta_3D.LoadIJNodes(), SMESH_MeshEditor.MakeExtrElements(), StdMeshers_Penta_3D.MakeMeshOnFxy1(), SMESH_Pattern.makePolyElements(), SMESHGUI_SingleEditDlg.onTextChange(), DriverDAT_W_SMDS_Mesh.Perform(), StdMeshers_QuadToTriaAdaptor.Preparation(), SMESH.Controls.ElementsOnShape.process(), SMESH.Controls.ElementsOnSurface.process(), SMESH_MeshEditor.QuadToTri(), VISCOUS._ViscousBuilder.refine(), SMDS_Mesh.RemoveFreeElement(), SMESHGUI_WhatIsDlg.SelectionIntoArgument(), SMDS_VolumeTool.Set(), SMDS_MeshElementIDFactory.SetInVtkGrid(), SMESH_MeshEditor.SewFreeBorder(), VISCOUS._ViscousBuilder.shrink(), SortableElement.SortableElement(), StdMeshers_MEFISTO_2D.StoreResult(), SMESH_MeshEditor_i.storeResult(), VISCOUS._Shrinker1D.SwapSrcTgtNodes(), and SMESH_MeshEditor.Transform().

SMDS_ElemIteratorPtr SMDS_MeshElement::nodesIteratorToUNV ( ) const [virtual, inherited]

virtual, redefined in vtkEdge, vtkFace and vtkVolume classes

Reimplemented in SMDS_VtkEdge, SMDS_VtkFace, and SMDS_VtkVolume.

Definition at line 181 of file SMDS_MeshElement.cxx.

References MESSAGE.

Referenced by DriverUNV_W_SMDS_Mesh.Perform().

{
  MESSAGE("Iterator not implemented");
  return SMDS_ElemIteratorPtr((SMDS_ElemIterator*) NULL);
}
void SMDS_MeshNode::Print ( std::ostream &  OS) const [virtual]

Reimplemented from SMDS_MeshElement.

Definition at line 103 of file SMDS_MeshNode.cxx.

References SMDS_MeshElement.myID, X(), Y(), and Z().

{
        OS << "Node <" << myID << "> : X = " << X() << " Y = "
                << Y() << " Z = " << Z() << endl;
}
void SMDS_MeshNode::RemoveInverseElement ( const SMDS_MeshElement parent) [protected]

Definition at line 90 of file SMDS_MeshNode.cxx.

References SMDS_Mesh._meshList, SMDS_MeshElement.getVtkId(), MYASSERT, SMDS_MeshElement.myMeshId, and SMDS_MeshElement.myVtkID.

Referenced by SMDS_Mesh.ChangeElementNodes(), SMDS_Mesh.ChangePolyhedronNodes(), SMDS_Mesh.RemoveElement(), and SMDS_Mesh.RemoveFreeElement().

{
    //MESSAGE("RemoveInverseElement " << myID << " " << parent->GetID());
    const SMDS_MeshCell* cell = dynamic_cast<const SMDS_MeshCell*>(parent);
    MYASSERT(cell);
    SMDS_Mesh::_meshList[myMeshId]->getGrid()->RemoveReferenceToCell(myVtkID, cell->getVtkId());
}
void SMDS_MeshElement.setId ( int  id) [protected, inherited]

Definition at line 149 of file SMDS_MeshElement.hxx.

{myID = id; }
void SMDS_MeshElement.setIdInShape ( int  id) [protected, inherited]
void SMDS_MeshNode::SetPosition ( const SMDS_PositionPtr aPos)
void SMDS_MeshElement.setShapeId ( LongType  shapeId) [protected, inherited]
void SMDS_MeshNode.setVtkId ( int  vtkId) [protected]

Reimplemented from SMDS_MeshElement.

Definition at line 68 of file SMDS_MeshNode.hxx.

References SMDS_MeshElement.myVtkID.

{ myVtkID = vtkId; };
void SMDS_MeshNode::setXYZ ( double  x,
double  y,
double  z 
)
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 130 of file SMDS_MeshElement.hxx.

References SMESH_test.ind.

                                        {
    if ( ind < 0 ) return NbNodes() + ind % NbNodes();
    if ( ind >= NbNodes() ) return ind % NbNodes();
    return ind;
  }
double SMDS_MeshNode::X ( ) const

Definition at line 274 of file SMDS_MeshNode.cxx.

References getCoord().

Referenced by SMESH_Mesh_i.BaryCenter(), SMESH_OctreeNode.buildChildrenData(), SMESH_OctreeNode.buildRootBox(), centroidalSmooth(), StdMeshers_Quadrangle_2D.Compute(), SMESH_Gen_i.ConcatenateCommon(), SMESH_Gen_i.CopyMesh(), SMESH_MeshEditor.CreateFlatElementsOnFacesGroups(), StdMeshers_Penta_3D.CreateNode(), SMESH_VisualObjDef.createPoints(), SMESHGUI_CuttingOfQuadsDlg.displayPreview(), SMESH_MeshEditor.DoubleNodes(), SMESH_MeshEditor.doubleNodes(), _QuadFaceGrid.DumpGrid(), enlargeBoundingBox(), SMESH_MeshEditor.ExtrusionSweep(), SMESH_Algo.FaceNormal(), SMESH_OctreeNode.FindCoincidentNodes(), SMESHGUI_MergeDlg.FindGravityCenter(), StdMeshers_Penta_3D.FindNodeOnShape(), SMESH_MesherHelper.FixQuadraticElements(), SMESH_Gen_i.GetBadInputElements(), SMDS_VolumeTool.GetBaryCenter(), SMESH_MEDMesh_i.getCoordinates(), TNode.GetCoords(), SMDS_VolumeTool.GetFaceBaryCenter(), SMESH_MesherHelper.GetMediumNode(), SMESH_MesherHelper.getMediumNodeOnComposedWire(), getNodeNodeDistance(), SMESH_Mesh_i.GetNodeXYZ(), SMESH.getNormale(), SMESH.Controls.NumericalFunctor.GetPoints(), getTetraVolume(), SMESH.Controls.Length2D.GetValues(), _QuadFaceGrid.GetXYZ(), SMESHGUI_ElemInfo.gravityCenter(), StdMeshers_Import_1D.importMesh(), SMESHGUI_TreeElemInfo.information(), SMESHGUI_SimpleElemInfo.information(), VISCOUS._Simplex.IsForward(), SMESH.Controls.ElementsOnSurface.isOnSurface(), isReverse(), SMESH_Pattern.isReversed(), SMESH_Algo.IsReversedSubMesh(), laplacianSmooth(), SMESH_Pattern.Load(), SMESH_MeshEditor.MakeExtrElements(), VISCOUS._ViscousBuilder.makeLayer(), StdMeshers_Penta_3D.MakeNodes(), SMESH_Pattern.mergePoints(), SMESH_NodeSearcherImpl.MoveNode(), SMESH_OctreeNode.NodesAround(), DriverUNV_W_SMDS_Mesh.Perform(), DriverMED_W_SMESHDS_Mesh.Perform(), DriverDAT_W_SMDS_Mesh.Perform(), SMESH_Gen_i.Precompute(), StdMeshers_QuadToTriaAdaptor.Preparation(), Print(), SMESH.Controls.ElementsOnShape.process(), project(), VISCOUS._ViscousBuilder.refine(), SMESHGUI_WhatIsDlg.SelectionIntoArgument(), SMESHGUI_TranslationDlg.SelectionIntoArgument(), SMESHGUI_SymmetryDlg.SelectionIntoArgument(), SMESHGUI_ScaleDlg.SelectionIntoArgument(), SMESHGUI_RotationDlg.SelectionIntoArgument(), SMESHGUI_RevolutionDlg.SelectionIntoArgument(), SMESHGUI_ExtrusionAlongPathDlg.SelectionIntoArgument(), SMDS_VolumeTool.Set(), VISCOUS._ViscousBuilder.setEdgeData(), StdMeshers_Penta_3D.SetHorizEdgeXYZ(), SMESH.TIdPreview.SetPointsData(), SMESH_MeshEditor.SewFreeBorder(), StdMeshers_Quadrangle_2D.Smooth(), StdMeshers_Quadrangle_2D.SplitQuad(), SMESH_MeshEditor_i.storeResult(), SMESH_MeshEditor.Transform(), SMESH_OctreeNode.UpdateByMoveNode(), DriverSTL_W_SMDS_Mesh.writeAscii(), and DriverSTL_W_SMDS_Mesh.writeBinary().

{
  double *coord = getCoord();
  return coord[0];
}
double SMDS_MeshNode::Y ( ) const

Definition at line 280 of file SMDS_MeshNode.cxx.

References getCoord().

Referenced by SMESH_Mesh_i.BaryCenter(), SMESH_OctreeNode.buildChildrenData(), SMESH_OctreeNode.buildRootBox(), centroidalSmooth(), StdMeshers_Quadrangle_2D.Compute(), SMESH_Gen_i.ConcatenateCommon(), SMESH_Gen_i.CopyMesh(), SMESH_MeshEditor.CreateFlatElementsOnFacesGroups(), StdMeshers_Penta_3D.CreateNode(), SMESH_VisualObjDef.createPoints(), SMESHGUI_CuttingOfQuadsDlg.displayPreview(), SMESH_MeshEditor.DoubleNodes(), SMESH_MeshEditor.doubleNodes(), _QuadFaceGrid.DumpGrid(), enlargeBoundingBox(), SMESH_MeshEditor.ExtrusionSweep(), SMESH_Algo.FaceNormal(), SMESH_OctreeNode.FindCoincidentNodes(), SMESHGUI_MergeDlg.FindGravityCenter(), StdMeshers_Penta_3D.FindNodeOnShape(), SMESH_Gen_i.GetBadInputElements(), SMDS_VolumeTool.GetBaryCenter(), SMESH_MEDMesh_i.getCoordinates(), TNode.GetCoords(), SMDS_VolumeTool.GetFaceBaryCenter(), SMESH_MesherHelper.GetMediumNode(), getNodeNodeDistance(), SMESH_Mesh_i.GetNodeXYZ(), SMESH.getNormale(), SMESH.Controls.NumericalFunctor.GetPoints(), getTetraVolume(), SMESH.Controls.Length2D.GetValues(), _QuadFaceGrid.GetXYZ(), SMESHGUI_ElemInfo.gravityCenter(), StdMeshers_Import_1D.importMesh(), SMESHGUI_TreeElemInfo.information(), SMESHGUI_SimpleElemInfo.information(), VISCOUS._Simplex.IsForward(), SMESH.Controls.ElementsOnSurface.isOnSurface(), isReverse(), SMESH_Pattern.isReversed(), SMESH_Algo.IsReversedSubMesh(), laplacianSmooth(), SMESH_Pattern.Load(), SMESH_MeshEditor.MakeExtrElements(), VISCOUS._ViscousBuilder.makeLayer(), StdMeshers_Penta_3D.MakeNodes(), SMESH_Pattern.mergePoints(), SMESH_OctreeNode.NodesAround(), DriverUNV_W_SMDS_Mesh.Perform(), DriverMED_W_SMESHDS_Mesh.Perform(), DriverDAT_W_SMDS_Mesh.Perform(), SMESH_Gen_i.Precompute(), StdMeshers_QuadToTriaAdaptor.Preparation(), Print(), SMESH.Controls.ElementsOnShape.process(), project(), SMESH_MeshEditor.QuadToTri(), SMESHGUI_WhatIsDlg.SelectionIntoArgument(), SMESHGUI_TranslationDlg.SelectionIntoArgument(), SMESHGUI_SymmetryDlg.SelectionIntoArgument(), SMESHGUI_ScaleDlg.SelectionIntoArgument(), SMESHGUI_RotationDlg.SelectionIntoArgument(), SMESHGUI_RevolutionDlg.SelectionIntoArgument(), SMESHGUI_ExtrusionAlongPathDlg.SelectionIntoArgument(), SMDS_VolumeTool.Set(), StdMeshers_Penta_3D.SetHorizEdgeXYZ(), SMESH.TIdPreview.SetPointsData(), SMESH_MeshEditor.SewFreeBorder(), StdMeshers_Quadrangle_2D.SplitQuad(), SMESH_MeshEditor_i.storeResult(), SMESH_MeshEditor.Transform(), SMESH_OctreeNode.UpdateByMoveNode(), DriverSTL_W_SMDS_Mesh.writeAscii(), and DriverSTL_W_SMDS_Mesh.writeBinary().

{
  double *coord = getCoord();
  return coord[1];
}
double SMDS_MeshNode::Z ( ) const

Definition at line 286 of file SMDS_MeshNode.cxx.

References getCoord().

Referenced by SMESH_Mesh_i.BaryCenter(), SMESH_OctreeNode.buildChildrenData(), SMESH_OctreeNode.buildRootBox(), centroidalSmooth(), StdMeshers_Quadrangle_2D.Compute(), SMESH_Gen_i.ConcatenateCommon(), SMESH_Gen_i.CopyMesh(), SMESH_MeshEditor.CreateFlatElementsOnFacesGroups(), StdMeshers_Penta_3D.CreateNode(), SMESH_VisualObjDef.createPoints(), SMESHGUI_CuttingOfQuadsDlg.displayPreview(), SMESH_MeshEditor.DoubleNodes(), SMESH_MeshEditor.doubleNodes(), _QuadFaceGrid.DumpGrid(), enlargeBoundingBox(), SMESH_MeshEditor.ExtrusionSweep(), SMESH_Algo.FaceNormal(), SMESH_OctreeNode.FindCoincidentNodes(), SMESHGUI_MergeDlg.FindGravityCenter(), StdMeshers_Penta_3D.FindNodeOnShape(), SMESH_Gen_i.GetBadInputElements(), SMDS_VolumeTool.GetBaryCenter(), SMESH_MEDMesh_i.getCoordinates(), TNode.GetCoords(), SMDS_VolumeTool.GetFaceBaryCenter(), SMESH_MesherHelper.GetMediumNode(), getNodeNodeDistance(), SMESH_Mesh_i.GetNodeXYZ(), SMESH.getNormale(), SMESH.Controls.NumericalFunctor.GetPoints(), getTetraVolume(), SMESH.Controls.Length2D.GetValues(), _QuadFaceGrid.GetXYZ(), SMESHGUI_ElemInfo.gravityCenter(), StdMeshers_Import_1D.importMesh(), SMESHGUI_TreeElemInfo.information(), SMESHGUI_SimpleElemInfo.information(), VISCOUS._Simplex.IsForward(), SMESH.Controls.ElementsOnSurface.isOnSurface(), isReverse(), SMESH_Pattern.isReversed(), SMESH_Algo.IsReversedSubMesh(), laplacianSmooth(), SMESH_Pattern.Load(), SMESH_MeshEditor.MakeExtrElements(), VISCOUS._ViscousBuilder.makeLayer(), StdMeshers_Penta_3D.MakeNodes(), SMESH_Pattern.mergePoints(), SMESH_OctreeNode.NodesAround(), DriverUNV_W_SMDS_Mesh.Perform(), DriverMED_W_SMESHDS_Mesh.Perform(), DriverDAT_W_SMDS_Mesh.Perform(), SMESH_Gen_i.Precompute(), StdMeshers_QuadToTriaAdaptor.Preparation(), Print(), SMESH.Controls.ElementsOnShape.process(), project(), SMESH_MeshEditor.QuadToTri(), SMESHGUI_WhatIsDlg.SelectionIntoArgument(), SMESHGUI_TranslationDlg.SelectionIntoArgument(), SMESHGUI_SymmetryDlg.SelectionIntoArgument(), SMESHGUI_ScaleDlg.SelectionIntoArgument(), SMESHGUI_RotationDlg.SelectionIntoArgument(), SMESHGUI_RevolutionDlg.SelectionIntoArgument(), SMESHGUI_ExtrusionAlongPathDlg.SelectionIntoArgument(), SMDS_VolumeTool.Set(), StdMeshers_Penta_3D.SetHorizEdgeXYZ(), SMESH.TIdPreview.SetPointsData(), SMESH_MeshEditor.SewFreeBorder(), StdMeshers_Quadrangle_2D.SplitQuad(), SMESH_MeshEditor_i.storeResult(), SMESH_MeshEditor.Transform(), SMESH_OctreeNode.UpdateByMoveNode(), DriverSTL_W_SMDS_Mesh.writeAscii(), and DriverSTL_W_SMDS_Mesh.writeBinary().

{
  double *coord = getCoord();
  return coord[2];
}

Friends And Related Function Documentation

friend class ObjectPool< SMDS_MeshNode > [friend]

Definition at line 41 of file SMDS_MeshNode.hxx.

bool operator< ( const SMDS_MeshNode e1,
const SMDS_MeshNode e2 
) [friend]

To be used with STL set.

Definition at line 368 of file SMDS_MeshNode.cxx.

{
        return e1.getVtkId()<e2.getVtkId();
        /*if(e1.myX<e2.myX) return true;
        else if(e1.myX==e2.myX)
        {
                if(e1.myY<e2.myY) return true;
                else if(e1.myY==e2.myY) return (e1.myZ<e2.myZ);
                else return false;
        }
        else return false;*/
}
std::ostream& operator<< ( std::ostream &  OS,
const SMDS_MeshElement ME 
) [friend, inherited]

Definition at line 61 of file SMDS_MeshElement.cxx.

{
        ME->Print(OS);
        return OS;
}
friend class SMDS_Mesh [friend]

Reimplemented from SMDS_MeshElement.

Definition at line 40 of file SMDS_MeshNode.hxx.

friend class SMDS_MeshElementIDFactory [friend, inherited]

Definition at line 97 of file SMDS_MeshElement.hxx.

bool SMDS_MeshElementIDFactory::BindID ( int  ID,
SMDS_MeshElement elem 
) [friend, inherited]
friend class SMDS_VtkFace [friend]

Definition at line 42 of file SMDS_MeshNode.hxx.

friend class SMESHDS_Mesh [friend]

Reimplemented from SMDS_MeshElement.

Definition at line 39 of file SMDS_MeshNode.hxx.

friend class SMESHDS_SubMesh [friend, inherited]

Definition at line 96 of file SMDS_MeshElement.hxx.


Field Documentation

int SMDS_MeshElement.myID [protected, inherited]

Element index in vector SMDS_Mesh.myNodes or SMDS_Mesh.myCells.

Definition at line 159 of file SMDS_MeshElement.hxx.

Referenced by Print(), and SMDS_Mesh.registerElement().

int SMDS_MeshElement.myIdInShape [protected, inherited]

Element index in SMESHDS_SubMesh vector.

Definition at line 167 of file SMDS_MeshElement.hxx.

ShortType SMDS_MeshElement.myMeshId [protected, inherited]

Definition at line 79 of file SMDS_MeshNode.hxx.

Referenced by GetPosition(), SetPosition(), and ~SMDS_MeshNode().

LongType SMDS_MeshElement.myShapeId [protected, inherited]

SubShape and SubMesh identification in SMESHDS.

Definition at line 165 of file SMDS_MeshElement.hxx.

int SMDS_MeshElement.myVtkID [protected, inherited]

Definition at line 61 of file SMDS_MeshNode.hxx.

Referenced by SMDS_MeshNode(), and ~SMDS_MeshNode().

Copyright © 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
Copyright © 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS