#!/usr/bin/env python3
# -*- coding: utf-8 -*-
-## Copyright (C) 2021-2023 CEA/DEN, EDF R&D, OPEN CASCADE
+## Copyright (C) 2021-2024 CEA/DEN, EDF R&D, OPEN CASCADE
##
## This library is free software; you can redistribute it and/or
## modify it under the terms of the GNU Lesser General Public
import pydefx
import pylauncher
-MESHER_HANDLED = ["NETGEN3D"]
+MESHER_HANDLED = ["NETGEN3D","NETGEN2D","NETGEN1D","NETGEN1D2D","NETGEN1D2D","GMSH3D"]
CMD_TEMPLATE = \
"""{runner} {mesher} {mesh_file} {shape_file} {param_file} {elem_orientation_file} {new_element_file} {output_mesh_file} > {log_file} 2>&1"""
else:
ext = ""
- if mesher in ['NETGEN3D']:
+ if mesher in ['NETGEN3D','NETGEN2D','NETGEN1D','NETGEN1D2D','NETGEN1D2D']:
exe_path = path.join("${NETGENPLUGIN_ROOT_DIR}",
"bin",
"salome",
"NETGENPlugin_Runner"+ext)
+ elif mesher in ['GMSH3D']:
+ exe_path = path.join("${GMSHPLUGIN_ROOT_DIR}",
+ "bin",
+ "salome",
+ "GMSHPlugin_Runner"+ext)
else:
raise Exception("Mesher {mesher} is not handled".format(mesher=mesher))
def run_local(args):
""" Simple Local run """
- print("Local run")
- #TODO: Check on how to handle log for windows (through sp.check_output)
cmd = CMD_TEMPLATE.format(\
runner=get_runner(args.mesher),
mesher=args.mesher,
new_element_file=args.new_element_file,
log_file=path.join(path.dirname(args.shape_file), "run.log"),
output_mesh_file=args.output_mesh_file)
- print("Executing:")
- print(cmd)
sp.check_output(cmd, shell=True, cwd=path.dirname(args.shape_file))
def run_pylauncher(args):