Salome HOME
- Disable PreCAD when using basic periodicity API
[plugins/blsurfplugin.git] / tests / test_sphere.py
1 # -*- coding: utf-8 -*-
2
3 import sys
4 import salome
5
6 salome.salome_init()
7 theStudy = salome.myStudy
8
9 ###
10 ### GEOM component
11 ###
12
13 import GEOM
14 from salome.geom import geomBuilder
15 geompy = geomBuilder.New(salome.myStudy)
16
17
18 geompy.init_geom(theStudy)
19
20 sphere = geompy.MakeSphereR(10)
21 geompy.addToStudy( sphere, 'sphere' )
22
23 ###
24 ### SMESH component
25 ###
26
27 import SMESH
28 from salome.smesh import smeshBuilder
29 smesh = smeshBuilder.New(salome.myStudy)
30
31
32 Mesh_1 = smesh.Mesh(sphere)
33
34 BLSURF_1 = Mesh_1.Triangle(algo=smeshBuilder.MG_CADSurf)
35 BLSURF_Parameters = BLSURF_1.Parameters()
36 BLSURF_Parameters.SetPhySize( 5 )
37 BLSURF_Parameters.SetGeometricMesh( 1 )
38 BLSURF_Parameters.SetAngleMesh( 8 )
39 # Activate PreCAD
40 # REMARK: These lines are the default behaviour from Salome 7.5.0
41 # => It is not needed to add them
42 #BLSURF_Parameters.SetTopology( 3 )
43 #BLSURF_Parameters.SetPreCADMergeEdges( False )
44 #BLSURF_Parameters.SetPreCADProcess3DTopology( False )
45
46 ok = Mesh_1.Compute()
47
48 if not ok:
49     raise Exception("Error when computing surface mesh")
50
51 Mesh_1.Tetrahedron(algo=smeshBuilder.MG_Tetra)
52
53 ok = Mesh_1.Compute()
54
55 if not ok:
56     raise Exception("Error when computing volume mesh")
57
58 ## Check that vertices are merged by preCAD preprocessing
59 #nodes = []
60 #for p in vertices:
61     #x, y, z = geompy.PointCoordinates(p)
62     #id_node = Mesh_1.FindNodeClosestTo(x, y, z)
63     #nodes.append(id_node)
64
65 #nodes = set(nodes)
66
67 #assert(len(nodes) == 1)
68
69 if salome.sg.hasDesktop():
70   salome.sg.updateObjBrowser(1)