Salome HOME
bos #29171 Refactor testing procedure
[modules/smesh.git] / doc / examples / measurements_ex03.py
1 # Basic Properties
2
3 import salome
4 salome.salome_init_without_session()
5
6 from salome.geom import geomBuilder
7 from salome.smesh import smeshBuilder
8
9 geom_builder = geomBuilder.New()
10 smesh_builder = smeshBuilder.New()
11
12 # create a box
13 box = geom_builder.MakeBoxDXDYDZ(100,100,100)
14 face = geom_builder.SubShapeAllSorted(box, geom_builder.ShapeType['FACE'])[0]
15
16 # mesh a box
17 mesh = smesh_builder.Mesh(box)
18 submesh_1d = mesh.Segment().NumberOfSegments(5)
19 submesh_2d = mesh.Quadrangle()
20 submesh_3d = mesh.Hexahedron()
21 submesh_2d_face = mesh.Triangle(face)
22 mesh.Compute()
23
24 # create a group
25
26 group_2d = mesh.Group(face)
27
28 # compute basic properties
29
30 print("Get basic properties: approach 1 (via measurements tool) ----")
31
32 measure = smesh_builder.CreateMeasurements()
33
34 print("* for mesh:")
35 print("  length:", measure.Length(mesh.mesh))
36 print("  area:",   measure.Area(mesh.mesh))
37 print("  volume:", measure.Volume(mesh.mesh))
38
39 print("* for group (2d):")
40 print("  length:", measure.Length(group_2d))
41 print("  area:",   measure.Area(group_2d))
42 print("  volume:", measure.Volume(group_2d))
43
44 print("* for submesh (2d):")
45 print("  length:", measure.Length(submesh_2d_face.GetSubMesh()))
46 print("  area:",   measure.Area(submesh_2d_face.GetSubMesh()))
47 print("  volume:", measure.Volume(submesh_2d_face.GetSubMesh()))
48
49 measure.UnRegister()
50
51 print("Get basic properties: approach 2 (via smeshBuilder) ----")
52
53 print("* for mesh:")
54 print("  length:", smesh_builder.GetLength(mesh))
55 print("  area:",   smesh_builder.GetArea(mesh))
56 print("  volume:", smesh_builder.GetVolume(mesh))
57
58 print("* for group (2d):")
59 print("  length:", smesh_builder.GetLength(group_2d))
60 print("  area:",   smesh_builder.GetArea(group_2d))
61 print("  volume:", smesh_builder.GetVolume(group_2d))
62
63 print("* for submesh (2d):")
64 print("  length:", smesh_builder.GetLength(submesh_2d_face))
65 print("  area:",   smesh_builder.GetArea(submesh_2d_face))
66 print("  volume:", smesh_builder.GetVolume(submesh_2d_face))
67
68 print("Get basic properties: approach 3 (via smeshBuilder.Mesh) ----")
69
70 print("* for mesh:")
71 print("  length:", mesh.GetLength())
72 print("  area:",   mesh.GetArea())
73 print("  volume:", mesh.GetVolume())
74
75 print("* for group (2d): unsupported")
76
77 print("* for submesh (2d): unsupported")