Salome HOME
53539: 0D Element
[modules/smesh.git] / doc / salome / examples / modifying_meshes_ex09.py
1 # Add Polygon
2
3 import math
4
5 import salome
6 salome.salome_init()
7
8 import SMESH, SALOMEDS
9 from salome.smesh import smeshBuilder
10 smesh =  smeshBuilder.New(salome.myStudy)
11
12
13 # create an empty mesh structure
14 mesh = smesh.Mesh() 
15
16 # a method to build a polygonal mesh element with <nb_vert> angles:
17 def MakePolygon (a_mesh, x0, y0, z0, radius, nb_vert):
18     al = 2.0 * math.pi / nb_vert
19     node_ids = []
20
21     # Create nodes for a polygon
22     for ii in range(nb_vert):
23         nid = mesh.AddNode(x0 + radius * math.cos(ii*al),
24                            y0 + radius * math.sin(ii*al),
25                                                      z0)
26         node_ids.append(nid)
27         pass
28
29     # Create a polygon
30     return mesh.AddPolygonalFace(node_ids)
31
32 # Create three polygons
33 f1 = MakePolygon(mesh, 0, 0,  0, 30, 13)
34 f2 = MakePolygon(mesh, 0, 0, 10, 21,  9)
35 f3 = MakePolygon(mesh, 0, 0, 20, 13,  6)
36
37 salome.sg.updateObjBrowser(1)