From: eap Date: Mon, 28 Jan 2013 11:10:54 +0000 (+0000) Subject: fix GetPreviewData() for the case of only nodes in edition result X-Git-Tag: pluginMGCleaner~149 X-Git-Url: http://git.salome-platform.org/gitweb/?p=modules%2Fsmesh.git;a=commitdiff_plain;h=2949f1214b45760fe981346138d6fab6b8262908;hp=af68a622d327b6f23a7564c8ab3871fae5056c2d fix GetPreviewData() for the case of only nodes in edition result --- diff --git a/src/SMESH_I/SMESH_MeshEditor_i.cxx b/src/SMESH_I/SMESH_MeshEditor_i.cxx index 02539efa5..87e886112 100644 --- a/src/SMESH_I/SMESH_MeshEditor_i.cxx +++ b/src/SMESH_I/SMESH_MeshEditor_i.cxx @@ -533,9 +533,6 @@ SMESH::MeshPreviewStruct* SMESH_MeshEditor_i::GetPreviewData() else { aMeshDS = getEditor().GetMeshDS(); } - int nbEdges = aMeshDS->NbEdges(); - int nbFaces = aMeshDS->NbFaces(); - int nbVolum = aMeshDS->NbVolumes(); myPreviewData = new SMESH::MeshPreviewStruct(); myPreviewData->nodesXYZ.length(aMeshDS->NbNodes()); @@ -545,14 +542,15 @@ SMESH::MeshPreviewStruct* SMESH_MeshEditor_i::GetPreviewData() if (TPreviewMesh * aPreviewMesh = dynamic_cast< TPreviewMesh* >( getEditor().GetMesh() )) { previewType = aPreviewMesh->myPreviewType; switch ( previewType ) { - case SMDSAbs_Edge : nbFaces = nbVolum = 0; break; - case SMDSAbs_Face : nbEdges = nbVolum = 0; break; - case SMDSAbs_Volume: nbEdges = nbFaces = 0; break; + case SMDSAbs_Edge : break; + case SMDSAbs_Face : break; + case SMDSAbs_Volume: break; default:; + if ( aMeshDS->GetMeshInfo().NbElements() == 0 ) previewType = SMDSAbs_Node; } } - myPreviewData->elementTypes.length(nbEdges + nbFaces + nbVolum); + myPreviewData->elementTypes.length( aMeshDS->GetMeshInfo().NbElements( previewType )); int i = 0, j = 0; SMDS_ElemIteratorPtr itMeshElems = aMeshDS->elementsIterator(previewType);