X-Git-Url: http://git.salome-platform.org/gitweb/?p=modules%2Fsmesh.git;a=blobdiff_plain;f=src%2FTools%2Fsmesh_plugins.py;h=7c726820ad47b7570b1576c234c8314b39644657;hp=330f4482d7cf183cf926d61810e24a499897066c;hb=HEAD;hpb=d2ed8e8dabac0df0031d340b637c412174865cac diff --git a/src/Tools/smesh_plugins.py b/src/Tools/smesh_plugins.py index 330f4482d..126c0c96e 100644 --- a/src/Tools/smesh_plugins.py +++ b/src/Tools/smesh_plugins.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# Copyright (C) 2011-2015 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 @@ -17,36 +17,39 @@ # # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com # -# Author : Guillaume Boulant (EDF) +# Author : Guillaume Boulant (EDF) # 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: from yamsplug_plugin import YamsLct - salome_pluginsmanager.AddFunction('ReMesh with MGSurfOpt ( formerly Yams )', + salome_pluginsmanager.AddFunction('ReMesh with MGSurfOpt', 'Run Yams', YamsLct) -except: - salome_pluginsmanager.logger.info('ERROR: MGSurfOpt (Yams) plug-in is unavailable') +except Exception as e: + salome_pluginsmanager.logger.info('ERROR: MGSurfOpt plug-in is unavailable: {}'.format(e)) pass try: @@ -54,36 +57,48 @@ 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: from blocFissure.ihm.fissureCoude_plugin import fissureCoudeDlg - salome_pluginsmanager.AddFunction('Meshed Pipe with a crack', + 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', + 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 module EFICAS to be installed -# thus it is first tested if this module is available before -# adding the plugin to salome_pluginsmanager +# ZCracks plugin requires the Zcracks tool try: - import eficasSalome - from zcracks_plugin import ZcracksLct - salome_pluginsmanager.AddFunction('Run Zcrack', - 'Run Zcrack', - ZcracksLct) -except: - salome_pluginsmanager.logger.info('ERROR: Zcrack plug-in is unavailable') + zcracksHome=os.environ['ZCRACKSHOME'] + if len(zcracksHome) > 1: + #print 'ZCRACKSHOME ', zcracksHome + from Zcracks.zcracks_plugin import ZcracksLct + salome_pluginsmanager.AddFunction('Run Zcracks', + 'Add a crack in a mesh with Zcracks plug-in', + ZcracksLct) +except Exception as e: + #print 'probleme zcracks' + 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