Salome HOME
bos #29171 Refactor testing procedure
[modules/smesh.git] / doc / examples / quad_medial_axis_algo.py
1 # Usage of Medial Axis Projection algorithm
2
3 # for meshing a ring face with quadrangles
4
5 import salome
6 salome.salome_init_without_session()
7
8 from salome.geom import geomBuilder
9 from salome.smesh import smeshBuilder
10
11 geom_builder = geomBuilder.New()
12 smesh_builder = smeshBuilder.New()
13
14 # create a ring face
15 circleEdge1 = geom_builder.MakeCircleR( 3 )
16 circleEdge2 = geom_builder.MakeCircleR( 7 )
17 ring = geom_builder.MakeFaceWires( [ circleEdge1, circleEdge2 ], True, theName='Ring' )
18 circleLen1  = geom_builder.BasicProperties( circleEdge1 )[0]
19 circleLen2  = geom_builder.BasicProperties( circleEdge2 )[0]
20
21 # make a mesh
22
23 mesh = smesh_builder.Mesh( ring )
24
25 circNbSeg = 60
26 algo1d = mesh.Segment()
27 algo1d.NumberOfSegments( circNbSeg ) # division of circle edges
28
29 algo2d = mesh.Quadrangle( smeshBuilder.QUAD_MA_PROJ )
30 algo2d.StartEndLength( circleLen2 / circNbSeg, circleLen1 / circNbSeg ) # radial division
31
32 mesh.Compute()