4 salome.salome_init_without_session()
6 from salome.smesh import smeshBuilder
8 smesh_builder = smeshBuilder.New()
10 # create 3 triangles and 1 segment all sharing edge 1-2
11 mesh = smesh_builder.Mesh()
12 n1 = mesh.AddNode( 0, 0, 0)
13 n2 = mesh.AddNode( 0, 0, -10)
14 n3 = mesh.AddNode( 10, 0, 0)
15 n4 = mesh.AddNode( 0, 10, 0)
16 n5 = mesh.AddNode( 0, -10, 0)
17 mesh.AddFace([ n1, n2, n3])
18 mesh.AddFace([ n1, n2, n4])
19 mesh.AddFace([ n1, n2, n5])
20 mesh.AddEdge([ n1, n2] )
22 # ===========================================================================
23 # cut all the triangles and the segment by setting a new node on the segment
24 # ===========================================================================
26 mesh.AddNodeOnSegment( n1, n2, 0.6 )
27 assert mesh.NbNodes() == 6 # one new node created
28 assert mesh.NbTriangles() == 6 # each of the 3 triangles is split into two
29 assert mesh.NbEdges() == 2 # a segment is split into two
31 # ===============================================================
32 # cut a triangle into three by adding a new node on the triangle
33 # ===============================================================
36 mesh.AddNodeOnFace( triangleID, 2, 0, -6 )
37 assert mesh.NbNodes() == 7 # one new node created
38 assert mesh.NbTriangles() == 8 # the triangles is split into three