From 2e100f2b36fae75403b825551bac76f097bc9965 Mon Sep 17 00:00:00 2001 From: uhz Date: Wed, 19 Apr 2017 17:06:28 +0200 Subject: [PATCH 1/5] Padder : bug fix for RmaxRmin paramete --- src/Tools/padder/spadderpy/gui/inputdialog.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Tools/padder/spadderpy/gui/inputdialog.py b/src/Tools/padder/spadderpy/gui/inputdialog.py index a05007792..2ca9f8fc9 100644 --- a/src/Tools/padder/spadderpy/gui/inputdialog.py +++ b/src/Tools/padder/spadderpy/gui/inputdialog.py @@ -318,7 +318,7 @@ class InputDialog(GenericDialog): if dictInputParameters.has_key(PARAM_KEY_NBITER): self.__ui.txtParamNbIter.setValue(dictInputParameters[PARAM_KEY_NBITER]) if dictInputParameters.has_key(PARAM_KEY_RMAXRMIN): - self.__ui.txtParamRminRmax.setValue(dictInputParameters[PARAM_KEY_RMAXRMIN]) + self.__ui.txtParamRmaxRmin.setValue(dictInputParameters[PARAM_KEY_RMAXRMIN]) def getData(self): """ From 417aadaeeab60c5256b8fde16509c975b3023112 Mon Sep 17 00:00:00 2001 From: eap Date: Mon, 24 Apr 2017 17:17:28 +0300 Subject: [PATCH 2/5] IPAL54097: SIGSEGV in Scalar Bar Properties dialog and crash in next operation --- src/OBJECT/SMESH_ScalarBarActor.cxx | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/src/OBJECT/SMESH_ScalarBarActor.cxx b/src/OBJECT/SMESH_ScalarBarActor.cxx index 1f5b00b63..a45696d7e 100644 --- a/src/OBJECT/SMESH_ScalarBarActor.cxx +++ b/src/OBJECT/SMESH_ScalarBarActor.cxx @@ -578,15 +578,18 @@ int SMESH_ScalarBarActor::RenderOpaqueGeometry(vtkViewport *viewport) // rnv begin // Customization of the vtkScalarBarActor to show distribution histogram. - if(myDistributionColoringType == SMESH_MULTICOLOR_TYPE && GetDistributionVisibility() && distrVisibility) - { - rgb = distColors->GetPointer(3*dcCount); //write into array directly - rgb[0] = rgba[0]; - rgb[1] = rgba[1]; - rgb[2] = rgba[2]; - dcCount++; - } + if ( myDistributionColoringType == SMESH_MULTICOLOR_TYPE && + GetDistributionVisibility() && + distrVisibility && + myNbValues[i] > 0 ) + { + rgb = distColors->GetPointer(3*dcCount); //write into array directly + rgb[0] = rgba[0]; + rgb[1] = rgba[1]; + rgb[2] = rgba[2]; + dcCount++; } + } // Now position everything properly // From f8875d639200d610b2d579f035a96695ee0a4f17 Mon Sep 17 00:00:00 2001 From: eap Date: Mon, 24 Apr 2017 17:24:35 +0300 Subject: [PATCH 3/5] 23437: EDF 14551 - mesh groups missing --- src/SMESH_I/SMESH_Gen_i_1.cxx | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/SMESH_I/SMESH_Gen_i_1.cxx b/src/SMESH_I/SMESH_Gen_i_1.cxx index 0ae519858..b08b7e3e6 100644 --- a/src/SMESH_I/SMESH_Gen_i_1.cxx +++ b/src/SMESH_I/SMESH_Gen_i_1.cxx @@ -277,6 +277,10 @@ static SALOMEDS::SObject_ptr publish(SALOMEDS::Study_ptr theStudy, SO = aStudyBuilder->NewObjectToTag( theFatherObject, theTag ); isNewSO = true; } + else + { + isInUseCaseTree = useCaseBuilder->IsUseCaseNode( SO ); + } } else { From 62336a394b80b503991ff801f2ebf7feff47e7f0 Mon Sep 17 00:00:00 2001 From: rnv Date: Fri, 28 Apr 2017 16:23:49 +0300 Subject: [PATCH 4/5] Update copyrights in the documentation. --- doc/salome/gui/SMESH/static/footer.html | 2 +- doc/salome/tui/static/footer.html | 2 +- src/Tools/MGCleanerPlug/doc/conf.py.in | 2 +- src/Tools/Verima/Doc/conf.py.in | 2 +- src/Tools/YamsPlug/doc/conf.py.in | 2 +- src/Tools/ZCracksPlug/doc/conf.py.in | 2 +- src/Tools/blocFissure/doc/conf.py.in | 2 +- 7 files changed, 7 insertions(+), 7 deletions(-) diff --git a/doc/salome/gui/SMESH/static/footer.html b/doc/salome/gui/SMESH/static/footer.html index 91afd6cc8..7cf11feba 100755 --- a/doc/salome/gui/SMESH/static/footer.html +++ b/doc/salome/gui/SMESH/static/footer.html @@ -4,7 +4,7 @@
    $navpath
diff --git a/doc/salome/tui/static/footer.html b/doc/salome/tui/static/footer.html index 91afd6cc8..7cf11feba 100755 --- a/doc/salome/tui/static/footer.html +++ b/doc/salome/tui/static/footer.html @@ -4,7 +4,7 @@
    $navpath
diff --git a/src/Tools/MGCleanerPlug/doc/conf.py.in b/src/Tools/MGCleanerPlug/doc/conf.py.in index 778165c64..0f6894ffd 100644 --- a/src/Tools/MGCleanerPlug/doc/conf.py.in +++ b/src/Tools/MGCleanerPlug/doc/conf.py.in @@ -36,7 +36,7 @@ master_doc = 'index' # General substitutions. project = 'MGCleaner Plug-in' -copyright = '2013-2016, EDF R&D' +copyright = '2013-2017, EDF R&D' # The default replacements for |version| and |release|, also used in various # other places throughout the built documents. diff --git a/src/Tools/Verima/Doc/conf.py.in b/src/Tools/Verima/Doc/conf.py.in index 8778ac7dc..dd67de87c 100644 --- a/src/Tools/Verima/Doc/conf.py.in +++ b/src/Tools/Verima/Doc/conf.py.in @@ -36,7 +36,7 @@ master_doc = 'index' # General substitutions. project = 'Verima Plug-in' -copyright = '2007-2016 CEA/DEN, EDF R&D, OPEN CASCADE' +copyright = '2007-2017 CEA/DEN, EDF R&D, OPEN CASCADE' # The default replacements for |version| and |release|, also used in various # other places throughout the built documents. diff --git a/src/Tools/YamsPlug/doc/conf.py.in b/src/Tools/YamsPlug/doc/conf.py.in index 3ac36bee3..29d094d19 100644 --- a/src/Tools/YamsPlug/doc/conf.py.in +++ b/src/Tools/YamsPlug/doc/conf.py.in @@ -36,7 +36,7 @@ master_doc = 'index' # General substitutions. project = 'MeshGems-SurfOpt Plug-in' -copyright = '2007-2016 CEA/DEN, EDF R&D, OPEN CASCADE' +copyright = '2007-2017 CEA/DEN, EDF R&D, OPEN CASCADE' # The default replacements for |version| and |release|, also used in various # other places throughout the built documents. diff --git a/src/Tools/ZCracksPlug/doc/conf.py.in b/src/Tools/ZCracksPlug/doc/conf.py.in index d8d457c80..db09764fc 100644 --- a/src/Tools/ZCracksPlug/doc/conf.py.in +++ b/src/Tools/ZCracksPlug/doc/conf.py.in @@ -36,7 +36,7 @@ master_doc = 'index' # General substitutions. project = 'ZCracks Plug-in' -copyright = '2007-2016 CEA/DEN, EDF R&D, OPEN CASCADE' +copyright = '2007-2017 CEA/DEN, EDF R&D, OPEN CASCADE' # The default replacements for |version| and |release|, also used in various # other places throughout the built documents. diff --git a/src/Tools/blocFissure/doc/conf.py.in b/src/Tools/blocFissure/doc/conf.py.in index 72abf4e5f..accd55b19 100644 --- a/src/Tools/blocFissure/doc/conf.py.in +++ b/src/Tools/blocFissure/doc/conf.py.in @@ -36,7 +36,7 @@ master_doc = 'index' # General substitutions. project = 'Plug-in blocFissure' -copyright = '2010-2016 EDF R&D' +copyright = '2010-2017 EDF R&D' # The default replacements for |version| and |release|, also used in various # other places throughout the built documents. From 2b69ded6e7adc32dafb69e39d78b654425a815b6 Mon Sep 17 00:00:00 2001 From: eap Date: Wed, 3 May 2017 19:52:00 +0300 Subject: [PATCH 5/5] 23440: [CEA 2093] : Merge nodes failed (test case bug_1796_mergenodes) --- src/SMESH/SMESH_MeshEditor.cxx | 36 +++++++++++++++++++++++++++------- 1 file changed, 29 insertions(+), 7 deletions(-) diff --git a/src/SMESH/SMESH_MeshEditor.cxx b/src/SMESH/SMESH_MeshEditor.cxx index 38b2eeb9f..1f343b1c4 100644 --- a/src/SMESH/SMESH_MeshEditor.cxx +++ b/src/SMESH/SMESH_MeshEditor.cxx @@ -7458,8 +7458,8 @@ void SMESH_MeshEditor::MergeNodes (TListOfListOfNodes & theGroupsOfNodes, for ( size_t i = 0; i < newElemDefs.size(); ++i ) { - if ( i > 0 || !mesh->ChangeElementNodes( elem, & - newElemDefs[i].myNodes[0], + if ( i > 0 || !mesh->ChangeElementNodes( elem, + & newElemDefs[i].myNodes[0], newElemDefs[i].myNodes.size() )) { if ( i == 0 ) @@ -7553,6 +7553,30 @@ bool SMESH_MeshEditor::applyMerge( const SMDS_MeshElement* elem, toRemove = true; nbResElems = 0; + if ( elem->IsQuadratic() && newElemDefs[0].myType == SMDSAbs_Face && nbNodes > 6 ) + { + // if corner nodes stick, remove medium nodes between them from uniqueNodes + int nbCorners = nbNodes / 2; + for ( int iCur = 0; iCur < nbCorners; ++iCur ) + { + int iPrev = ( iCur + 1 ) % nbCorners; + if ( curNodes[ iCur ] == curNodes[ iPrev ] ) // corners stick + { + int iMedium = iCur + nbCorners; + vector< const SMDS_MeshNode* >::iterator i = + std::find( uniqueNodes.begin() + nbCorners - nbRepl, + uniqueNodes.end(), + curNodes[ iMedium ]); + if ( i != uniqueNodes.end() ) + { + --nbUniqueNodes; + for ( ; i+1 != uniqueNodes.end(); ++i ) + *i = *(i+1); + } + } + } + } + switch ( entity ) { case SMDSEntity_Polygon: @@ -7670,11 +7694,9 @@ bool SMESH_MeshEditor::applyMerge( const SMDS_MeshElement* elem, // | | // +---+---+ // 0 7 3 - if (( nbUniqueNodes == 6 && nbRepl == 2 ) && - (( iRepl[0] == 1 && iRepl[1] == 4 && curNodes[1] == curNodes[0] ) || - ( iRepl[0] == 2 && iRepl[1] == 5 && curNodes[2] == curNodes[1] ) || - ( iRepl[0] == 3 && iRepl[1] == 6 && curNodes[3] == curNodes[2] ) || - ( iRepl[0] == 3 && iRepl[1] == 7 && curNodes[3] == curNodes[0] ))) + if ( nbUniqueNodes == 6 && + iRepl[0] < 4 && + ( nbRepl == 1 || iRepl[1] >= 4 )) { toRemove = false; }