1 # Test made with high level API
2 # -----------------------------
9 mypartset = model.moduleDocument()
12 # Creating a new Part, two circles, extrusions on them and Boolean CUT
14 mypart = model.addPart(mypartset).document()
16 sk1 = model.addSketch(mypart, model.defaultPlane("XOY"))
17 c1 = sk1.addCircle(0, 0, 100)
19 bigcyl = model.addExtrusion(mypart, sk1.selectFace(), 100)
21 sk2 = model.addSketch(mypart, model.defaultPlane("XOY"))
22 c2 = sk2.addCircle(20, 30, 30)
24 smallcyl = model.addExtrusion(mypart, sk2.selectFace(), 150)
26 cut = model.addCut(mypart, bigcyl.results(), smallcyl.results())
30 # check bodies number is 1: only Boolean result
31 assert(mypart.size("Bodies") == 1)
33 model.addRecover(mypart, cut, smallcyl.results())
37 # check that one is recovered
38 assert(mypart.size("Bodies") == 2)
42 # check bodies number is 1: recover is canceled
43 assert(mypart.size("Bodies") == 1)
46 # check persistent flag of recover: never concealed
48 recover = model.addRecover(mypart, cut, smallcyl.results())
51 assert(mypart.size("Bodies") == 2)
54 sk3 = model.addSketch(mypart, model.defaultPlane("XOY"))
55 c3 = sk3.addCircle(0, 0, 90)
57 big2 = model.addExtrusion(mypart, sk3.selectFace(), 110)
59 cut2 = model.addCut(mypart, big2.results(), smallcyl.results())
63 # two booleans and small cylinder
64 assert(mypart.size("Bodies") == 3)
66 assert(model.checkPythonDump())