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=e8798921d31b735624022f8f90952cd638dbde1a;hb=HEAD;hpb=7a65c9fad427b1ccba6b9ccae612296e5092a324 diff --git a/src/Tools/smesh_plugins.py b/src/Tools/smesh_plugins.py index e8798921d..126c0c96e 100644 --- a/src/Tools/smesh_plugins.py +++ b/src/Tools/smesh_plugins.py @@ -1,5 +1,5 @@ -# -*- coding: iso-8859-1 -*- -# Copyright (C) 2011-2015 EDF R&D +# -*- coding: utf-8 -*- +# 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,47 +17,88 @@ # # 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 -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 - -salome_pluginsmanager.AddFunction('PADDER mesher', - 'Create a mesh with PADDER', - runSpadderPlugin) - -salome_pluginsmanager.AddFunction('MeshCut', - 'Cut a tetrahedron mesh by a plane', - MeshCut) - -salome_pluginsmanager.AddFunction('ReMesh with MGSurfOpt ( formerly Yams )', - 'Run Yams', - YamsLct) - -salome_pluginsmanager.AddFunction('ReMesh with MGCleaner', - 'Run MGCleaner', - MGCleanerLct) - -salome_pluginsmanager.AddFunction('Meshed Pipe with a crack', - 'Create a mesh with blocFissure tool', - fissureCoudeDlg) - -# 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) +try: + from spadderPlugin import runSpadderPlugin + salome_pluginsmanager.AddFunction('PADDER mesher', + 'Create a mesh with PADDER', + runSpadderPlugin) +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, icon=QIcon(icon_file)) + +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', + 'Run Yams', + YamsLct) +except Exception as e: + salome_pluginsmanager.logger.info('ERROR: MGSurfOpt plug-in is unavailable: {}'.format(e)) + pass + +try: + from MGCleanerplug_plugin import MGCleanerLct + salome_pluginsmanager.AddFunction('ReMesh with MGCleaner', + 'Run MGCleaner', + MGCleanerLct) +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 (blocFissure plugin)', + 'Create a mesh with blocFissure tool', + fissureCoudeDlg) +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 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 +try: + 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