Salome HOME
0023224: [CEA 1709] Error with numpy with Windows version of SALOME
authorvsr <vsr@opencascade.com>
Thu, 4 Feb 2016 09:22:57 +0000 (12:22 +0300)
committervsr <vsr@opencascade.com>
Thu, 4 Feb 2016 09:24:04 +0000 (12:24 +0300)
Each mesh plug-in is added in a separate try/except block, to prevent blocking of plug-ins due to error in some of them (e.g. if import failed)

src/Tools/smesh_plugins.py

index 3fedbd2..c82bb17 100644 (file)
 #
 import salome_pluginsmanager
 
-from spadderPlugin import runSpadderPlugin
-from meshcut_plugin import MeshCut
-from yamsplug_plugin import YamsLct
-from MGCleanerplug_plugin import MGCleanerLct
-from blocFissure.ihm.fissureCoude_plugin import fissureCoudeDlg
+try:
+  from spadderPlugin import runSpadderPlugin
+  salome_pluginsmanager.AddFunction('PADDER mesher',
+                                    'Create a mesh with PADDER',
+                                    runSpadderPlugin)
+except:
+  salome_pluginsmanager.logger.info('ERROR: PADDER mesher plug-in is unavailable')
+  pass
 
-salome_pluginsmanager.AddFunction('PADDER mesher',
-                                  'Create a mesh with PADDER',
-                                  runSpadderPlugin)
+try:
+  from meshcut_plugin import MeshCut
+  salome_pluginsmanager.AddFunction('MeshCut',
+                                    'Cut a tetrahedron mesh by a plane',
+                                    MeshCut)
 
-salome_pluginsmanager.AddFunction('MeshCut',
-                                  'Cut a tetrahedron mesh by a plane',
-                                  MeshCut)
+except:
+  salome_pluginsmanager.logger.info('ERROR: MeshCut plug-in is unavailable')
+  pass
 
-salome_pluginsmanager.AddFunction('ReMesh with MGSurfOpt ( formerly Yams )',
-                                  'Run Yams',
-                                  YamsLct)
+try:
+  from yamsplug_plugin import YamsLct
+  salome_pluginsmanager.AddFunction('ReMesh with MGSurfOpt ( formerly Yams )',
+                                    'Run Yams',
+                                    YamsLct)
+except:
+  salome_pluginsmanager.logger.info('ERROR: MGSurfOpt (Yams) plug-in is unavailable')
+  pass
 
-salome_pluginsmanager.AddFunction('ReMesh with MGCleaner',
-                                  'Run MGCleaner',
-                                  MGCleanerLct)
+try:
+  from MGCleanerplug_plugin import MGCleanerLct
+  salome_pluginsmanager.AddFunction('ReMesh with MGCleaner',
+                                    'Run MGCleaner',
+                                    MGCleanerLct)
+except:
+  salome_pluginsmanager.logger.info('ERROR: MGCleaner plug-in is unavailable')
+  pass
 
-salome_pluginsmanager.AddFunction('Meshed Pipe with a crack',
-                                  'Create a mesh with blocFissure tool',
-                                  fissureCoudeDlg)
+try:
+  from blocFissure.ihm.fissureCoude_plugin import fissureCoudeDlg
+  salome_pluginsmanager.AddFunction('Meshed Pipe with a crack',
+                                    'Create a mesh with blocFissure tool',
+                                    fissureCoudeDlg)
+except:
+  salome_pluginsmanager.logger.info('ERROR: Meshed Pipe with a crack plug-in is unavailable')
+  pass
 
 # ZCracks plugin requires the module EFICAS to be installed
 # thus it is first tested if this module is available before
 # adding the plugin to salome_pluginsmanager
-enable_zcracks = True
 try:
   import eficasSalome
-except:
-  enable_zcracks = False
-
-if enable_zcracks:
   from zcracks_plugin import ZcracksLct
   salome_pluginsmanager.AddFunction('Run Zcrack',
                                     'Run Zcrack',
                                     ZcracksLct)
+except:
+  salome_pluginsmanager.logger.info('ERROR: Zcrack plug-in is unavailable')
+  pass