Salome HOME
Revert "Synchronize adm files"
[modules/geom.git] / doc / salome / examples / free_boundaries.py
1 # Check Free Boundaries
2
3 import os
4 import salome
5 salome.salome_init()
6 import GEOM
7 from salome.geom import geomBuilder
8 geompy = geomBuilder.New(salome.myStudy)
9 gg = salome.ImportComponentGUI("GEOM")
10
11 # create boxes
12 box1 = geompy.MakeBox(0,0,0,100,50,100)
13 box2 = geompy.MakeBox(100,0,0,250,50,100)
14
15 # make a compound
16 compound = geompy.MakeCompound([box1, box2])
17
18 # import from *.brep
19 ImportFromBREP = geompy.ImportBREP(os.getenv("DATA_DIR")+"/Shapes/Brep/flight_solid.brep")
20
21 # get a face
22 faces = geompy.SubShapeAllSortedCentres(ImportFromBREP, geompy.ShapeType["FACE"])
23
24 # get the free boundary for face 32
25 Res = geompy.GetFreeBoundary(faces[32])
26 isSuccess   = Res[0]
27 ClosedWires = Res[1]
28 OpenWires   = Res[2]
29
30 if isSuccess == 1 :
31     print "Checking free boudaries is OK."
32 else :
33     print "Checking free boudaries is KO!"
34 print "len(ClosedWires) = ", len(ClosedWires)
35
36 i = 0
37 for wire in ClosedWires :
38     wire_name = "Face 32 -> Close wires : WIRE %d"%(i+1)
39     geompy.addToStudy(ClosedWires[i], wire_name)
40     if i < len(ClosedWires) :
41         i = i+ 1
42
43 print "len(OpenWires) = ", len(OpenWires)
44
45 i = 0
46 for wire in OpenWires :
47     wire_name = "Face 32 -> Open wires : WIRE %d"%(i+1)
48     geompy.addToStudy(OpenWires[i], wire_name)
49     if i < len(OpenWires) :
50         i = i+ 1
51
52 # get the free boundary for face 41
53 Res = geompy.GetFreeBoundary(faces[41])
54 isSuccess   = Res[0]
55 ClosedWires = Res[1]
56 OpenWires   = Res[2]
57
58 if isSuccess == 1 :
59     print "Checking free boudaries is OK."
60 else :
61     print "Checking free boudaries is KO!"
62 print "len(ClosedWires) = ", len(ClosedWires)
63
64 i = 0
65 for wire in ClosedWires :
66     wire_name = "Face 41 -> Close wires : WIRE %d"%(i+1)
67     geompy.addToStudy(ClosedWires[i], wire_name)
68     if i < len(ClosedWires) :
69         i = i+ 1
70
71 print "len(OpenWires) = ", len(OpenWires)
72
73 i = 0
74 for wire in OpenWires :
75     wire_name = "Face 41 -> Open wires : WIRE %d"%(i+1)
76     geompy.addToStudy(OpenWires[i], wire_name)
77     if i < len(OpenWires) :
78         i = i+ 1
79
80 # add the imported object to the study
81 id_ImportFromBREP = geompy.addToStudy(ImportFromBREP, "ImportFromBREP")
82 salome.sg.updateObjBrowser(1)