Salome HOME
Update of CheckDone
[modules/smesh.git] / src / Tools / smesh_plugins.py
index 2b2ad4b603230b1fa0971875e803f60d2df603dd..126c0c96eac33cc665ff85bb4aa9ca65aa0405c2 100644 (file)
@@ -1,5 +1,5 @@
 # -*- coding: utf-8 -*-
-# Copyright (C) 2011-2016  EDF R&D
+# Copyright (C) 2011-2024  EDF
 #
 # This library is free software; you can redistribute it and/or
 # modify it under the terms of the GNU Lesser General Public
 #
 import salome_pluginsmanager
 import os
+from qtsalome import QIcon
 
 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')
+except Exception as e:
+  salome_pluginsmanager.logger.info('ERROR: PADDER mesher plug-in is unavailable: {}'.format(e))
   pass
 
 try:
   from meshcut_plugin import MeshCut
+  icon_file = os.path.join(os.getenv('SMESH_ROOT_DIR'),'share', 'salome', 'resources', 'smesh', 'mesh_plugins_meshcut.png')
   salome_pluginsmanager.AddFunction('MeshCut',
                                     'Cut a tetrahedron mesh by a plane',
-                                    MeshCut)
+                                    MeshCut, icon=QIcon(icon_file))
 
-except:
-  salome_pluginsmanager.logger.info('ERROR: MeshCut plug-in is unavailable')
+except Exception as e:
+  salome_pluginsmanager.logger.info('ERROR: MeshCut plug-in is unavailable: {}'.format(e))
   pass
 
 try:
@@ -46,8 +48,8 @@ try:
   salome_pluginsmanager.AddFunction('ReMesh with MGSurfOpt',
                                     'Run Yams',
                                     YamsLct)
-except:
-  salome_pluginsmanager.logger.info('ERROR: MGSurfOpt plug-in is unavailable')
+except Exception as e:
+  salome_pluginsmanager.logger.info('ERROR: MGSurfOpt plug-in is unavailable: {}'.format(e))
   pass
 
 try:
@@ -55,8 +57,8 @@ try:
   salome_pluginsmanager.AddFunction('ReMesh with MGCleaner',
                                     'Run MGCleaner',
                                     MGCleanerLct)
-except:
-  salome_pluginsmanager.logger.info('ERROR: MGCleaner plug-in is unavailable')
+except Exception as e:
+  salome_pluginsmanager.logger.info('ERROR: MGCleaner plug-in is unavailable: {}'.format(e))
   pass
 
 try:
@@ -64,16 +66,16 @@ try:
   salome_pluginsmanager.AddFunction('Meshed Pipe with a crack (blocFissure plugin)',
                                     'Create a mesh with blocFissure tool',
                                     fissureCoudeDlg)
-except:
-  salome_pluginsmanager.logger.info('ERROR: Meshed Pipe with a crack plug-in is unavailable')
+except Exception as e:
+  salome_pluginsmanager.logger.info('ERROR: Meshed Pipe with a crack plug-in is unavailable: {}'.format(e))
   pass
 try:
   from blocFissure.ihm.fissureGenerale_plugin import fissureGeneraleDlg
   salome_pluginsmanager.AddFunction('Add a crack in a mesh (blocFissure plugin)',
                                     'Insert a crack in an hexahedral mesh with blocFissure tool',
                                     fissureGeneraleDlg)
-except:
-  salome_pluginsmanager.logger.info('ERROR: Meshed Pipe with a crack plug-in is unavailable')
+except Exception as e:
+  salome_pluginsmanager.logger.info('ERROR: Meshed Pipe with a crack plug-in is unavailable: {}'.format(e))
   pass
 
 # ZCracks plugin requires the Zcracks tool
@@ -82,10 +84,21 @@ try:
   if len(zcracksHome) > 1:
     #print 'ZCRACKSHOME ', zcracksHome
     from Zcracks.zcracks_plugin import ZcracksLct
-    salome_pluginsmanager.AddFunction('Run Zcrack',
-                                      'Run Zcrack',
+    salome_pluginsmanager.AddFunction('Run Zcracks',
+                                      'Add a crack in a mesh with Zcracks plug-in',
                                       ZcracksLct)
-except:
+except Exception as e:
   #print 'probleme zcracks'
-  salome_pluginsmanager.logger.info('ERROR: Zcrack plug-in is unavailable')
+  salome_pluginsmanager.logger.info('ERROR: Zcrack plug-in is unavailable: {}'.format(e))
+  pass
+
+# Topological to volumic mesh plugin
+try:
+  from TopIIVolMeshPlugin import TopIIVolMeshLct
+  salome_pluginsmanager.AddFunction('Run Topological Volumic mesher',
+                                    'run topological volumic mesher',
+                                    TopIIVolMeshLct)
+except Exception as e:
+  #print 'probleme zcracks'
+  salome_pluginsmanager.logger.info('ERROR: TopIIVolMesh plug-in is unavailable: {}'.format(e))
   pass