X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FSMESHDS%2FSMESHDS_SubMesh.cxx;h=32073bb50bb9e179eca45bf9f615772fc798acc3;hb=6cb56a9c4439a6de088e092c2cb67f3d86729a5c;hp=82ba05748b3a4f47c537a44ef819f0a880205301;hpb=2c607013a23bd4e7ba07e72e0c04dee2c1209cff;p=modules%2Fsmesh.git diff --git a/src/SMESHDS/SMESHDS_SubMesh.cxx b/src/SMESHDS/SMESHDS_SubMesh.cxx index 82ba05748..32073bb50 100644 --- a/src/SMESHDS/SMESHDS_SubMesh.cxx +++ b/src/SMESHDS/SMESHDS_SubMesh.cxx @@ -1,4 +1,4 @@ -// Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE +// Copyright (C) 2007-2012 CEA/DEN, EDF R&D, OPEN CASCADE // // Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS @@ -71,6 +71,11 @@ void SMESHDS_SubMesh::AddElement(const SMDS_MeshElement * ME) { if (!IsComplexSubmesh()) { + if ( ME->GetType() == SMDSAbs_Node ) + { + AddNode( static_cast< const SMDS_MeshNode* >( ME )); + return; + } //MESSAGE("in " << myIndex << " AddElement "<< ME->GetID()); int oldShapeId = ME->getshapeId(); if ( oldShapeId > 0 ) @@ -158,9 +163,9 @@ void SMESHDS_SubMesh::AddNode(const SMDS_MeshNode * N) int shapeId = N->getshapeId(); if ((shapeId > 0) && (idInSubShape >= 0)) { - MESSAGE("========== AddNode already belonging to other subShape " << N->GetID()); +// MESSAGE("========== AddNode already belonging to other subShape " << N->GetID()); // OK for vertex nodes - //this->getParent()->UnSetNodeOnShape(N); + throw SALOME_Exception(LOCALIZED("add node in subshape already belonging to a subshape")); } SMDS_MeshNode* node = (SMDS_MeshNode*)(N); node->setShapeId(myIndex);