X-Git-Url: http://git.salome-platform.org/gitweb/?p=modules%2Fsmesh.git;a=blobdiff_plain;f=src%2FSMDS%2FSMDS_MeshNode.cxx;h=554f0fa7115dd75e0e8e021c97be94f90a051694;hp=553d568f056dbda22c9cd08d5ed4248f754632af;hb=88141f757b048eaa5aae0be49faaf274448bbcaf;hpb=c7d720eb8a7192a3316c968df9451e3a6d0f3f8d diff --git a/src/SMDS/SMDS_MeshNode.cxx b/src/SMDS/SMDS_MeshNode.cxx index 553d568f0..554f0fa71 100644 --- a/src/SMDS/SMDS_MeshNode.cxx +++ b/src/SMDS/SMDS_MeshNode.cxx @@ -20,7 +20,7 @@ // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -// SMESH SMDS : implementaion of Salome mesh data structure +// SMESH SMDS : implementation of Salome mesh data structure // #ifdef _MSC_VER #pragma warning(disable:4786) @@ -67,7 +67,8 @@ void SMDS_MeshNode::init(int id, int meshId, int shapeId, double x, double y, do SMDS_UnstructuredGrid * grid = SMDS_Mesh::_meshList[myMeshId]->getGrid(); vtkPoints *points = grid->GetPoints(); points->InsertPoint(myVtkID, x, y, z); - grid->GetLinks()->ResizeForPoint( myVtkID ); + if ( grid->HasLinks() ) + grid->GetLinks()->ResizeForPoint( myVtkID ); } SMDS_MeshNode::~SMDS_MeshNode() @@ -162,9 +163,9 @@ public: cellList.push_back(vtkId); } } - myCells = cellList.empty() ? 0 : &cellList[0]; - myNcells = cellList.size(); } + myCells = cellList.empty() ? 0 : &cellList[0]; + myNcells = cellList.size(); } } @@ -275,9 +276,12 @@ vtkIdType SMDS_MeshNode::GetVtkType() const void SMDS_MeshNode::AddInverseElement(const SMDS_MeshElement* ME) { SMDS_UnstructuredGrid* grid = SMDS_Mesh::_meshList[myMeshId]->getGrid(); - vtkCellLinks *Links = grid->GetLinks(); - Links->ResizeCellList(myVtkID, 1); - Links->AddCellReference(ME->getVtkId(), myVtkID); + if ( grid->HasLinks() ) + { + vtkCellLinks *Links = grid->GetLinks(); + Links->ResizeCellList(myVtkID, 1); + Links->AddCellReference(ME->getVtkId(), myVtkID); + } } //=======================================================================