Salome HOME
a5cf102c82eb618ce7d4dd3c0bc5ed0a74b4d4f6
[modules/geom.git] / doc / salome / examples / complex_objs_ex01.py
1 # Creation of a Prism
2
3 import geompy
4 import salome
5 gg = salome.ImportComponentGUI("GEOM")
6
7 # create a vertex and a vector
8 p1 = geompy.MakeVertex(   0.,   0.,   0.)
9 p2 = geompy.MakeVertex( 100.,   0.,   0.)
10 p3 = geompy.MakeVertex( 100., 100.,   0.)
11 p4 = geompy.MakeVertex(   0., 100.,   0.)
12 p5 = geompy.MakeVertex(   0.,   0.,  60.)
13 p6 = geompy.MakeVertex(-100.,   0.,   0.)
14 p7 = geompy.MakeVertex(-100.,-100.,   0.)
15 p8 = geompy.MakeVertex(   0.,-100.,   0.)
16
17 # create a vector from the given components
18 vector = geompy.MakeVectorDXDYDZ(50., 50., 50.)
19
20 #create vectors from two points
21 vector1_arc1 = geompy.MakeVector(p1, p2)
22 vector2_arc1 = geompy.MakeVector(p1, p4)
23 vector1_arc2 = geompy.MakeVector(p1, p6)
24 vector2_arc2 = geompy.MakeVector(p1, p8)
25
26 # create arcs from three points
27 arc1 = geompy.MakeArc(p2, p3, p4)
28 arc2 = geompy.MakeArc(p6, p7, p8)
29
30 # create wires
31 wire1 = geompy.MakeWire([vector1_arc1, arc1, vector2_arc1])
32 wire2 = geompy.MakeWire([vector1_arc2, arc2, vector2_arc2])
33
34 # create faces
35 isPlanarWanted = 1
36 face1 = geompy.MakeFace(wire1, isPlanarWanted)
37 face2 = geompy.MakeFace(wire2, isPlanarWanted)
38
39 # create prisms
40 prism1 = geompy.MakePrism(face2, p1, p5)
41 prism2 = geompy.MakePrismVecH(face1, vector, 50)
42 prism3 = geompy.MakePrismVecH2Ways(face1, vector, 50)
43
44 # add objects in the study
45 id_face1   = geompy.addToStudy(face1,"Face1")
46 id_face2   = geompy.addToStudy(face2,"Face2")
47 id_prism1 = geompy.addToStudy(prism1,"Prism1")
48 id_prism2 = geompy.addToStudy(prism2,"Prism2")
49 id_prism3 = geompy.addToStudy(prism3,"Prism3")
50
51 # display cylinders
52 gg.createAndDisplayGO(id_face1)
53 gg.setDisplayMode(id_face1,1)
54 gg.createAndDisplayGO(id_face2)
55 gg.setDisplayMode(id_face2,1)
56 gg.createAndDisplayGO(id_prism1)
57 gg.setDisplayMode(id_prism1,1)
58 gg.createAndDisplayGO(id_prism2)
59 gg.setDisplayMode(id_prism2,1) 
60 gg.createAndDisplayGO(id_prism3)
61 gg.setDisplayMode(id_prism3,1)