Salome HOME
52539: TC7.5.0: Smoothing - impossible to select fixed nodes
authoreap <eap@opencascade.com>
Wed, 22 Oct 2014 12:15:00 +0000 (16:15 +0400)
committereap <eap@opencascade.com>
Wed, 22 Oct 2014 12:15:00 +0000 (16:15 +0400)
src/SMESHGUI/SMESHGUI_MeshOp.cxx
src/SMESHGUI/SMESHGUI_SmoothingDlg.cxx
src/SMESH_SWIG/smeshBuilder.py

index bed7c25fda6dc159638fb18e57d4e00ba54d7c87..b54df5d96b79e9603a93199bf5a8500baf3053b8 100644 (file)
@@ -387,8 +387,11 @@ bool SMESHGUI_MeshOp::isSubshapeOk() const
                                                               compSub,
                                                               compSub->GetShapeType() );
             geomGen->RemoveObject( compSub );
                                                               compSub,
                                                               compSub->GetShapeType() );
             geomGen->RemoveObject( compSub );
-            if ( shared->length() > 0 )
+            compSub->UnRegister();
+            if ( shared->length() > 0 ) {
               geomGen->RemoveObject( shared[0] );
               geomGen->RemoveObject( shared[0] );
+              shared[0]->UnRegister();
+            }
             return ( shared->length() > 0 );
           }
         }
             return ( shared->length() > 0 );
           }
         }
index 7e1d8d0518e25e811f203d7e1b94cb8f7d709b85..6fcc47a413a11074fb140815d4e0a1c2344ca04d 100644 (file)
@@ -596,20 +596,21 @@ void SMESHGUI_SmoothingDlg::SelectionIntoArgument()
 
       if (myNbOkElements < 1)
         return;
 
       if (myNbOkElements < 1)
         return;
-      
+
       QStringList elements;
       for ( int i = 0; i < myNbOkElements; ++i )
         elements << QString::number( aMapIndex( i+1 ) );
       aString = elements.join(" ");
     }
       QStringList elements;
       for ( int i = 0; i < myNbOkElements; ++i )
         elements << QString::number( aMapIndex( i+1 ) );
       aString = elements.join(" ");
     }
-  } else if (myEditCurrentArgument == LineEditNodes && !myMesh->_is_nil() && myIO == IO ) {
+  } else if (myEditCurrentArgument == LineEditNodes && !myMesh->_is_nil() && myIO->isSame(IO) )
+  {
     myNbOkNodes = SMESH::GetNameOfSelectedNodes(mySelector, IO, aString);
   }
 
   myEditCurrentArgument->setText(aString);
   myEditCurrentArgument->repaint();
   myEditCurrentArgument->setEnabled(false); // to update lineedit IPAL 19809
     myNbOkNodes = SMESH::GetNameOfSelectedNodes(mySelector, IO, aString);
   }
 
   myEditCurrentArgument->setText(aString);
   myEditCurrentArgument->repaint();
   myEditCurrentArgument->setEnabled(false); // to update lineedit IPAL 19809
-  myEditCurrentArgument->setEnabled(true); 
+  myEditCurrentArgument->setEnabled(true);
 
   if (myNbOkElements && (myNbOkNodes || LineEditNodes->text().trimmed().isEmpty())) {
     buttonOk->setEnabled(true);
 
   if (myNbOkElements && (myNbOkNodes || LineEditNodes->text().trimmed().isEmpty())) {
     buttonOk->setEnabled(true);
index 61c239b15741723c903ecfc8aefce0fdcb6d35cf..77481578f21ba152fe2820dc5776aa8ddd3569b9 100644 (file)
@@ -3456,7 +3456,7 @@ class Mesh:
 
     ##
     # @brief Creates missing boundary elements around either the whole mesh or 
 
     ##
     # @brief Creates missing boundary elements around either the whole mesh or 
-    #    groups of 2D elements
+    #    groups of elements
     #  @param dimension - defines type of boundary elements to create
     #  @param groupName - a name of group to store all boundary elements in,
     #    "" means not to create the group
     #  @param dimension - defines type of boundary elements to create
     #  @param groupName - a name of group to store all boundary elements in,
     #    "" means not to create the group
@@ -3464,7 +3464,7 @@ class Mesh:
     #    mesh + created boundary elements; "" means not to create the new mesh
     #  @param toCopyAll - if true, the whole initial mesh will be copied into
     #    the new mesh else only boundary elements will be copied into the new mesh
     #    mesh + created boundary elements; "" means not to create the new mesh
     #  @param toCopyAll - if true, the whole initial mesh will be copied into
     #    the new mesh else only boundary elements will be copied into the new mesh
-    #  @param groups - groups of 2D elements to make boundary around
+    #  @param groups - groups of elements to make boundary around
     #  @retval tuple( long, mesh, groups )
     #                 long - number of added boundary elements
     #                 mesh - the mesh where elements were added to
     #  @retval tuple( long, mesh, groups )
     #                 long - number of added boundary elements
     #                 mesh - the mesh where elements were added to