]> SALOME platform Git repositories - modules/smesh.git/blob - doc/salome/examples/basic_geom_smesh_without_session.py
Salome HOME
Merge branch 'master' into gni/adaptation
[modules/smesh.git] / doc / salome / examples / basic_geom_smesh_without_session.py
1
2 """
3 Most basic test of GEOM/SMESH usecase, but it can be tested without any session launched.
4 """
5
6 import sys
7 import salome
8
9 import os
10 salome.standalone() # <- key point of test is here
11 salome.salome_init()
12 import salome_notebook
13 notebook = salome_notebook.NoteBook()
14
15 ###
16 ### GEOM component
17 ###
18
19 import GEOM
20 from salome.geom import geomBuilder
21 import math
22 import SALOMEDS
23
24 geompy = geomBuilder.New()
25 O = geompy.MakeVertex(0, 0, 0)
26 OX = geompy.MakeVectorDXDYDZ(1, 0, 0)
27 OY = geompy.MakeVectorDXDYDZ(0, 1, 0)
28 OZ = geompy.MakeVectorDXDYDZ(0, 0, 1)
29 Box_1 = geompy.MakeBoxDXDYDZ(200, 200, 200)
30 geompy.addToStudy( O, 'O' )
31 geompy.addToStudy( OX, 'OX' )
32 geompy.addToStudy( OY, 'OY' )
33 geompy.addToStudy( OZ, 'OZ' )
34 geompy.addToStudy( Box_1, 'Box_1' )
35 ###
36 ### SMESH component
37 ###
38 import  SMESH, SALOMEDS
39 from salome.smesh import smeshBuilder
40
41 smesh = smeshBuilder.New()
42 smesh.SetEnablePublish( True ) # Set to False to avoid publish in study if not needed or in some particular situations:
43                                  # multiples meshes built in parallel, complex and numerous mesh edition (performance)
44 Mesh_1 = smesh.Mesh(Box_1)
45 NETGEN_1D_2D_3D = Mesh_1.Tetrahedron(algo=smeshBuilder.NETGEN_1D2D3D)
46 isDone = Mesh_1.Compute()
47
48
49 ## Set names of Mesh objects
50 smesh.SetName(NETGEN_1D_2D_3D.GetAlgorithm(), 'NETGEN 1D-2D-3D')
51 smesh.SetName(Mesh_1.GetMesh(), 'Mesh_1')
52
53 assert(Mesh_1.GetMesh().NbTetras()>=5)