Salome HOME
Switch to SSL mode for tests : naive approach
[modules/geom.git] / doc / salome / examples / transformation_operations_ex04.py
1 # Mirror Image
2
3 import salome
4 salome.salome_init_without_session()
5 import GEOM
6 from salome.geom import geomBuilder
7 geompy = geomBuilder.New()
8 gg = salome.ImportComponentGUI("GEOM")
9
10 # create a box
11 box = geompy.MakeBoxDXDYDZ(200, 200, 200)
12
13 # create an object, symmetrical to another object through the given plane
14 p1 = geompy.MakeVertex( 0, 25,  0)
15 p2 = geompy.MakeVertex( 5, 25,  0)
16 p3 = geompy.MakeVertex( 0,-30, 40)
17 plane = geompy.MakePlaneThreePnt(p1, p2, p3, 1000.)
18 mirror1 = geompy.MakeMirrorByPlane(box, plane)
19
20 # create an object, symmetrical to another object through the given axis
21 p4 = geompy.MakeVertex( 210, 210, -20)
22 p5 = geompy.MakeVertex( 210, 210, 220)
23 axis = geompy.MakeVector(p4, p5)
24 mirror2 = geompy.MakeMirrorByAxis(box, axis)
25
26 # create an object, symmetrical to another object through the given point
27 mirror3 = geompy.MakeMirrorByPoint(box, p4)
28
29 # add objects in the study
30 id_box = geompy.addToStudy(box, "Box")
31 id_plane = geompy.addToStudy(plane, "Plane")
32 id_mirror1 = geompy.addToStudy(mirror1, "Mirror plane")
33 id_axis = geompy.addToStudy(axis, "Axis")
34 id_mirror2 = geompy.addToStudy(mirror2, "Mirror axis")
35 id_p4 = geompy.addToStudy(p4, "Point")
36 id_mirror3 = geompy.addToStudy(mirror3, "Mirror point")
37
38 # display the results
39 gg.createAndDisplayGO(id_box)
40 gg.setDisplayMode(id_box,1)
41 gg.createAndDisplayGO(id_plane)
42 gg.createAndDisplayGO(id_mirror1)
43 gg.setDisplayMode(id_mirror1,1)
44 gg.createAndDisplayGO(id_axis)
45 gg.createAndDisplayGO(id_mirror2)
46 gg.setDisplayMode(id_mirror2,1)
47 gg.createAndDisplayGO(id_p4)
48 gg.createAndDisplayGO(id_mirror3)
49 gg.setDisplayMode(id_mirror3,1)