Salome HOME
bos #29468: Advanced geometry features: distance Edge-Edge & Face-Face
[modules/geom.git] / doc / salome / examples / topological_geom_objs_ex05.py
1 # Creation of a Solid
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 vertices
11 p0 = geompy.MakeVertex( 0.,  0.,  0.)
12 pz = geompy.MakeVertex( 0.,  0., 40.)
13
14 # create sketchers
15 sketcher = geompy.MakeSketcher("Sketcher:F -50 -50:TT 100 -50:R 0:C 50 70:R 0:L 100:WW")
16
17 # create faces from two wires
18 face = geompy.MakeFace(sketcher,1)
19
20 # create a prism
21 prism = geompy.MakePrism(face, p0, pz)
22
23 # explode the prism into faces
24 prism_faces = geompy.SubShapeAllSortedCentres(prism, geompy.ShapeType["FACE"])
25
26 # create a shell from a set of faces
27 shell = geompy.MakeShell([prism_faces[0], prism_faces[1],
28                           prism_faces[3], prism_faces[4],
29                           prism_faces[5], prism_faces[2]])
30
31 # create a solid, bounded by the given shells
32 solid = geompy.MakeSolid([shell])
33
34 # add objects in the study
35 id_solid = geompy.addToStudy(solid,"Solid")
36
37 # display the solid
38 gg.createAndDisplayGO(id_solid)
39 gg.setDisplayMode(id_solid,1)