smesh/doc/salome/examples/test_smeshplugin_mg_tetra_parallele.py
2021-08-12 11:38:10 +02:00

83 lines
1.8 KiB
Python

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
Test000
Checks the availability of the external plugins :
1 MG-TETRA-PARALLELE (GHS3DPRLPLUGIN)
Copyright EDF R&D 2017
"""
__revision__ = "V1.0"
#
# Computation of the meshes: T/F
ComputeMeshes = True
import salome
salome.salome_init_without_session()
theStudy = salome.myStudy
#
import iparameters
IPAR = iparameters.IParameters(salome.myStudy.GetCommonParameters("Interface Applicative", 1))
# fill list AP_MODULES_LIST
IPAR.append("AP_MODULES_LIST", "Geometry")
IPAR.append("AP_MODULES_LIST", "Mesh")
ERROR = 0
MESSAGE = ""
#
while not ERROR :
###
### A. GEOM component
###
import GEOM
from salome.geom import geomBuilder
geompy = geomBuilder.New()
O = geompy.MakeVertex(0, 0, 0, "0")
OX = geompy.MakeVectorDXDYDZ(1, 0, 0, "OX")
OY = geompy.MakeVectorDXDYDZ(0, 1, 0, "OY")
OZ = geompy.MakeVectorDXDYDZ(0, 0, 1, "OZ")
BOX = geompy.MakeBoxDXDYDZ(200, 200, 200, "BOX")
###
### B. SMESH component
###
import SMESH
from salome.smesh import smeshBuilder
smesh = smeshBuilder.New()
# B.7. MG_Tetra_Parallel
TEXTE = "MG_Tetra_Parallel"
MESH_7 = smesh.Mesh(BOX)
smesh.SetName(MESH_7.GetMesh(), "M_"+TEXTE)
MG_CADSurf_Tp = MESH_7.Triangle(algo=smeshBuilder.MG_CADSurf)
try :
MG_Tetra_Parallel = MESH_7.Tetrahedron(algo=smeshBuilder.MG_Tetra_Parallel)
except :
MESSAGE += "\nImpossible d'utiliser "+TEXTE
ERROR += 1
else :
if ComputeMeshes :
smesh.SetName(MG_Tetra_Parallel.GetAlgorithm(), TEXTE)
OK_COMPUTE = MESH_7.Compute()
if not OK_COMPUTE :
MESSAGE += "\nErreur avec "+TEXTE
ERROR += 1
else :
print(TEXTE+": OK")
break
###
### C. End
###
if ERROR :
raise Exception("\n\nNombre d'erreurs : %d" % ERROR + MESSAGE + "\n")
else :
print("\nAucun problème\n")