Salome HOME
Merge branch 'rnv/win_swig_generation' of salome:modules/smesh into rnv/win_swig_gene...
authorrnv <rnv@opencascade.com>
Tue, 30 May 2017 08:35:54 +0000 (11:35 +0300)
committerrnv <rnv@opencascade.com>
Tue, 30 May 2017 08:35:54 +0000 (11:35 +0300)
Conflicts:
src/Tools/ZCracksPlug/__init__.py
src/Tools/padder/spadderpy/gui/inputdialog.py

12 files changed:
doc/salome/gui/SMESH/static/footer.html
doc/salome/tui/static/footer.html
src/OBJECT/SMESH_ScalarBarActor.cxx
src/SMESH/SMESH_MeshEditor.cxx
src/SMESH_I/SMESH_Gen_i_1.cxx
src/Tools/MGCleanerPlug/doc/conf.py.in
src/Tools/Verima/Doc/conf.py.in
src/Tools/YamsPlug/doc/conf.py.in
src/Tools/ZCracksPlug/__init__.py
src/Tools/ZCracksPlug/doc/conf.py.in
src/Tools/blocFissure/doc/conf.py.in
src/Tools/padder/spadderpy/gui/inputdialog.py

index 91afd6c..7cf11fe 100755 (executable)
@@ -4,7 +4,7 @@
   <ul>
     $navpath
     <li class="footer">
-      Copyright &copy; 2007-2016  CEA/DEN, EDF R&amp;D, OPEN CASCADE<br>
+      Copyright &copy; 2007-2017  CEA/DEN, EDF R&amp;D, OPEN CASCADE<br>
       Copyright &copy; 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, CEDRAT, EDF R&amp;D, LEG, PRINCIPIA R&amp;D, BUREAU VERITAS<br>
     </li>
   </ul>
index 91afd6c..7cf11fe 100755 (executable)
@@ -4,7 +4,7 @@
   <ul>
     $navpath
     <li class="footer">
-      Copyright &copy; 2007-2016  CEA/DEN, EDF R&amp;D, OPEN CASCADE<br>
+      Copyright &copy; 2007-2017  CEA/DEN, EDF R&amp;D, OPEN CASCADE<br>
       Copyright &copy; 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, CEDRAT, EDF R&amp;D, LEG, PRINCIPIA R&amp;D, BUREAU VERITAS<br>
     </li>
   </ul>
index 1f5b00b..a45696d 100644 (file)
@@ -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
     //
index 38b2eeb..1f343b1 100644 (file)
@@ -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;
       }
index 0ae5198..b08b7e3 100644 (file)
@@ -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
   {
index 778165c..0f6894f 100644 (file)
@@ -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.
index 8778ac7..dd67de8 100644 (file)
@@ -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.
index 3ac36be..29d094d 100644 (file)
@@ -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.
index 4ae994c..ed56ab1 100644 (file)
@@ -4,12 +4,6 @@ import utilityFunctions as uF
 
 os.environ['QT_QPA_PLATFORM_PLUGIN_PATH']=os.path.join(os.environ['QTDIR'],'plugins','platforms')
 
-if 'MESHGEMSHOME' in os.environ:
-  meshgemsdir=os.environ['MESHGEMSHOME']
-  if len(meshgemsdir) > 0:
-    meshgems=meshgemsdir.split(os.sep)[-1]
-    uF.removeFromSessionPath('LD_LIBRARY_PATH', meshgems)
-
 #commande="/bin/bash -c ""source $HOME/zebulon/Z8.6.6_NEW/do_config_bash"""
 #os.system(commande)
 
index d8d457c..db09764 100644 (file)
@@ -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.
index 72abf4e..accd55b 100644 (file)
@@ -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.
index a050077..1ec31ce 100644 (file)
@@ -93,7 +93,7 @@ class InputDialog(GenericDialog):
         # indexation.
         self.MESHTYPE_ICONS = {}
         meshTypeIndex = InputData.MESHTYPES.CONCRETE
-        self.__ui.cmbMeshType.setItemText(meshTypeIndex, "Béton")
+        self.__ui.cmbMeshType.setItemText(meshTypeIndex, "B?ton")
         icon = QIcon()
         icon.addFile(os.path.join(iconfolder,"concrete.png"))
         self.__ui.cmbMeshType.setItemIcon(meshTypeIndex, icon)
@@ -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):
         """