X-Git-Url: http://git.salome-platform.org/gitweb/?p=modules%2Fsmesh.git;a=blobdiff_plain;f=src%2FTools%2Fsmesh_plugins.py;h=66aa07bd9392eea2135d5f6e3373ac0924e4798b;hp=52a886f3c8bfc48b6d9d1806e765da66cffdb1ae;hb=HEAD;hpb=004925bca40d46c25cf9cc837193335163c2d44f diff --git a/src/Tools/smesh_plugins.py b/src/Tools/smesh_plugins.py index 52a886f3c..126c0c96e 100644 --- a/src/Tools/smesh_plugins.py +++ b/src/Tools/smesh_plugins.py @@ -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 @@ -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,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: @@ -63,27 +66,39 @@ 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 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