a0fc65e7873d513dd05a2384d103c13dd7326eaa
[occt.git] / samples / tcl / challenge.tcl
1 # This script creates a model described at
2 # http://www.caddd.org/2010/04/opencascade-challenge.html
3
4 pload MODELING VISUALIZATION
5
6 # make base 
7 box b0 0  0 0 12 7 6
8 explode b0 e
9 blend b01 b0 1 b0_8
10 blend b02 b01 1 b0_6
11
12 # make cut at bottom
13 box b1 3 -1 0 2 9 1.5
14 bcut b2 b02 b1
15 explode b2 e
16 blend b3 b2 1 b2_27
17 blend b4 b3 1 b2_30
18
19 # make central cut
20 box h1 3 -1 2.5 2 9 0.5
21 box h2 3 -1 3 2 9 2
22 plane p 4 -1 3 0 1 0
23 pcylinder c p 1 9
24 bcommon h3 h2 c
25 bcut b5 b4 h1
26 bcut b6 b5 h3
27
28 # make side cut
29 box b7 9 -1 1 2 9 4
30 explode b7 e
31 blend b71 b7 1 b7_6
32 blend b72 b71 1 b7_8
33 bcut b8 b6 b72
34
35 # make box for inner cylindrical cut
36 box bc1 -1 0 2 9 1 4
37 box bc2 2 -1 2 4 3 3
38 bcut bc3 bc1 bc2
39 explode bc3 e
40 blend bc4 bc3 1 bc3_20
41 blend bc5 bc4 1 bc3_23
42 blend bc6 bc5 1.99 bc3_21
43 blend bc7 bc6 1.99 bc3_22
44
45 # make inner cylindrical cut
46 explode bc7 f
47 revol r bc7_1 -1 0 6 1 0 0 100
48 bcut b9 b8 r
49
50 # make outer cylindrical cut
51 plane p2 -1 0 6 1 0 0
52 pcylinder c2 p2 6 15
53 bcommon res b9 c2
54
55 # show result
56 donly res
57 vinit
58 vdisplay res
59 vsetdispmode 1
60 vfit
61