X-Git-Url: http://git.salome-platform.org/gitweb/?p=modules%2Fsmesh.git;a=blobdiff_plain;f=src%2FSMDS%2FSMDS_MeshNode.cxx;fp=src%2FSMDS%2FSMDS_MeshNode.cxx;h=53054f8e4cb93c7ddbfc503f033b9b640e6d58c0;hp=553d568f056dbda22c9cd08d5ed4248f754632af;hb=7eec94a3aee21950eb470b656177016375d2b604;hpb=cf7328b78f5781ca1e17ab0b15d878746084dfa9;ds=sidebyside diff --git a/src/SMDS/SMDS_MeshNode.cxx b/src/SMDS/SMDS_MeshNode.cxx index 553d568f0..53054f8e4 100644 --- a/src/SMDS/SMDS_MeshNode.cxx +++ b/src/SMDS/SMDS_MeshNode.cxx @@ -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); + } } //=======================================================================