From a00f90ebab08741cc788e1d9c50a87e847cff142 Mon Sep 17 00:00:00 2001 From: eap Date: Mon, 8 Dec 2014 20:18:59 +0300 Subject: [PATCH] 22812: EDF 9218 SMESH: An empty group is created when using the duplicate nodes and/or elements --- doc/salome/gui/SMESH/input/extrusion.doc | 7 +++++-- src/SMESH/SMESH_MeshEditor.cxx | 8 ++++++++ src/SMESHGUI/SMESHGUI_DuplicateNodesDlg.cxx | 2 +- src/SMESH_SWIG/smeshBuilder.py | 2 +- 4 files changed, 15 insertions(+), 4 deletions(-) diff --git a/doc/salome/gui/SMESH/input/extrusion.doc b/doc/salome/gui/SMESH/input/extrusion.doc index a28af48d4..126e3b0e9 100644 --- a/doc/salome/gui/SMESH/input/extrusion.doc +++ b/doc/salome/gui/SMESH/input/extrusion.doc @@ -3,8 +3,11 @@ \page extrusion_page Extrusion \n Extrusion is used to build mesh elements of plus one -dimension than the input ones. Any node, segment or 2D element can be -extruded. Each type of elements has a corresponding type of extruded elements: +dimension than the input ones. Boundary elements around elements of +plus one dimension are additionally created. All created elements +can be automatically grouped. +

Any node, segment or 2D element can be extruded. Each type of +elements is extruded into a corresponding type of result elements: diff --git a/src/SMESH/SMESH_MeshEditor.cxx b/src/SMESH/SMESH_MeshEditor.cxx index 08cc1d9c2..75a8f216e 100644 --- a/src/SMESH/SMESH_MeshEditor.cxx +++ b/src/SMESH/SMESH_MeshEditor.cxx @@ -11247,6 +11247,14 @@ bool SMESH_MeshEditor::DoubleNodesOnGroupBoundaries( const std::vector::iterator name_group = mapOfJunctionGroups.begin(); + for ( ; name_group != mapOfJunctionGroups.end(); ++name_group ) + { + if ( name_group->second && name_group->second->GetGroupDS()->IsEmpty() ) + myMesh->RemoveGroup( name_group->second->GetGroupDS()->GetID() ); + } + meshDS->CleanDownWardConnectivity(); // Mesh has been modified, downward connectivity is no more usable, free memory grid->BuildLinks(); diff --git a/src/SMESHGUI/SMESHGUI_DuplicateNodesDlg.cxx b/src/SMESHGUI/SMESHGUI_DuplicateNodesDlg.cxx index 57428add2..8b3c6eac1 100644 --- a/src/SMESHGUI/SMESHGUI_DuplicateNodesDlg.cxx +++ b/src/SMESHGUI/SMESHGUI_DuplicateNodesDlg.cxx @@ -602,7 +602,7 @@ void SMESHGUI_DuplicateNodesDlg::onSelectionChanged() break; case 3: ok = ( aGroupType == SMESH::VOLUME || - aGroupType == SMESH::FACE ); + aGroupType == SMESH::FACE ); break; } } diff --git a/src/SMESH_SWIG/smeshBuilder.py b/src/SMESH_SWIG/smeshBuilder.py index fe63e726b..308472841 100644 --- a/src/SMESH_SWIG/smeshBuilder.py +++ b/src/SMESH_SWIG/smeshBuilder.py @@ -3391,7 +3391,7 @@ class Mesh: # @param theSubMesh a group or a sub-mesh to convert; WARNING: in this case the mesh can become not conformal # @param theToBiQuad If True, converts the mesh to bi-quadratic # @ingroup l2_modif_tofromqu - def ConvertToQuadratic(self, theForce3d, theSubMesh=None, theToBiQuad=False): + def ConvertToQuadratic(self, theForce3d=False, theSubMesh=None, theToBiQuad=False): if isinstance( theSubMesh, Mesh ): theSubMesh = theSubMesh.mesh if theToBiQuad: -- 2.39.2
Extruded element Result element
Node Segment