Salome HOME
CMake:
[modules/smesh.git] / doc / salome / examples / defining_hypotheses_ex13.py
1 # Radial Quadrangle 1D2D example
2
3 import salome
4 salome.salome_init()
5 import GEOM
6 from salome.geom import geomBuilder
7 geompy = geomBuilder.New(salome.myStudy)
8
9 import SMESH, SALOMEDS
10 from salome.smesh import smeshBuilder
11 smesh =  smeshBuilder.New(salome.myStudy)
12
13 # Create face from the wire and add to study
14 Face = geompy.MakeSketcher("Sketcher:F 0 0:TT 20 0:R 90:C 20 90:WF", [0, 0, 0, 1, 0, 0, 0, 0, 1])
15 geompy.addToStudy(Face,"Face")
16 edges = geompy.SubShapeAllSorted(Face, geompy.ShapeType["EDGE"])
17 circle, radius1, radius2 = edges
18 geompy.addToStudyInFather(Face, radius1,"radius1")
19 geompy.addToStudyInFather(Face, radius2,"radius2")
20 geompy.addToStudyInFather(Face, circle,"circle")
21
22
23 # Define geometry for mesh, and Radial Quadrange algorithm
24 mesh = smesh.Mesh(Face)
25 radial_Quad_algo = mesh.Quadrangle(algo=smeshBuilder.RADIAL_QUAD)
26
27 # The Radial Quadrange algorithm can work without any hypothesis
28 # In this case it uses "Default Nb of Segments" preferences parameter to discretize edges
29 mesh.Compute()
30
31 # The Radial Quadrange uses global or local 1d hypotheses if it does
32 # not have its own hypotheses.
33 # Define global hypotheses to discretize radial edges and a local one for circular edge
34 global_Nb_Segments = mesh.Segment().NumberOfSegments(5)
35 local_Nb_Segments  = mesh.Segment(circle).NumberOfSegments(10)
36 mesh.Compute()
37
38 # Define own parameters of Radial Quadrange algorithm
39 radial_Quad_algo.NumberOfLayers( 4 )
40 mesh.Compute()