Salome HOME
Precise doc on sub-mesh priority
[modules/smesh.git] / doc / salome / examples / test_smeshplugin_mg_tetra_parallele.py
1 #!/usr/bin/env python3
2 # -*- coding: utf-8 -*-
3 """
4 Test000
5 Checks the availability of the external plugins :
6  1 MG-TETRA-PARALLELE   (GHS3DPRLPLUGIN)
7 Copyright EDF R&D 2017
8 """
9 __revision__ = "V1.0"
10 #
11 # Computation of the meshes: T/F
12 ComputeMeshes = True
13
14 import salome
15
16 salome.salome_init()
17 theStudy = salome.myStudy
18 #
19 import iparameters
20 IPAR = iparameters.IParameters(salome.myStudy.GetCommonParameters("Interface Applicative", 1))
21
22 # fill list AP_MODULES_LIST
23 IPAR.append("AP_MODULES_LIST", "Geometry")
24 IPAR.append("AP_MODULES_LIST", "Mesh")
25
26 ERROR = 0
27 MESSAGE = ""
28 #
29 while not ERROR :
30
31 ###
32 ### A. GEOM component
33 ###
34   import GEOM
35   from salome.geom import geomBuilder
36   geompy = geomBuilder.New()
37   O = geompy.MakeVertex(0, 0, 0, "0")
38   OX = geompy.MakeVectorDXDYDZ(1, 0, 0, "OX")
39   OY = geompy.MakeVectorDXDYDZ(0, 1, 0, "OY")
40   OZ = geompy.MakeVectorDXDYDZ(0, 0, 1, "OZ")
41   BOX = geompy.MakeBoxDXDYDZ(200, 200, 200, "BOX")
42
43 ###
44 ### B. SMESH component
45 ###
46
47   import  SMESH
48   from salome.smesh import smeshBuilder
49
50   smesh = smeshBuilder.New()
51
52
53 # B.7. MG_Tetra_Parallel
54   TEXTE = "MG_Tetra_Parallel"
55   MESH_7 = smesh.Mesh(BOX)
56   smesh.SetName(MESH_7.GetMesh(), "M_"+TEXTE)
57   MG_CADSurf_Tp = MESH_7.Triangle(algo=smeshBuilder.MG_CADSurf)
58   try :
59     MG_Tetra_Parallel = MESH_7.Tetrahedron(algo=smeshBuilder.MG_Tetra_Parallel)
60   except :
61     MESSAGE += "\nImpossible d'utiliser "+TEXTE
62     ERROR += 1
63   else :
64     if ComputeMeshes :
65       smesh.SetName(MG_Tetra_Parallel.GetAlgorithm(), TEXTE)
66       OK_COMPUTE = MESH_7.Compute()
67       if not OK_COMPUTE :
68         MESSAGE += "\nErreur avec "+TEXTE
69         ERROR += 1
70       else :
71         print(TEXTE+": OK")
72
73   break
74
75 ###
76 ### C. End
77 ###
78 if ERROR :
79   raise Exception("\n\nNombre d'erreurs : %d" % ERROR + MESSAGE + "\n")
80 else :
81   print("\nAucun problème\n")
82