3bea4c16 |
1 | puts "============" |
2 | puts "OCC7166" |
3 | puts "============" |
4 | puts "" |
5 | ####################################################################### |
6 | # Improvement of API of ThruSection |
7 | ####################################################################### |
8 | |
9 | set BugNumber OCC7166 |
10 | |
11 | # |
12 | # |
13 | # |
14 | # |
15 | # |
16 | # v22 v21 |
17 | # *----------------------* |
18 | # / \ |
19 | # / \ |
20 | # / v12 v11 \ |
21 | # / *---------------------* \ |
22 | # / | | \ |
23 | # / | | \ |
24 | # * v23 | * v3 | v28 * |
25 | # | | | \ | | |
26 | # | | | \ | | |
27 | # | | | \ | | |
28 | # | | | \ | | |
29 | # | | | /* v2 | | |
30 | # | | | / | | |
31 | # | | | / | | * v4, v5 |
32 | # | | | / | | |
33 | # | | * | | |
34 | # | | v1 | | |
35 | # | | | | |
36 | # | | | | |
37 | # * v24 | | v27 * |
38 | # \ | | / |
39 | # \ *---------------------* / |
40 | # \ v13 v14 / |
41 | # \ / |
42 | # \ / |
43 | # \ v25 v26 / |
44 | # *----------------------* |
45 | # |
46 | # |
47 | # |
48 | |
49 | set z1 40 |
50 | set z2 20 |
51 | set z3 0 |
52 | set z4 100 |
53 | |
7b5e532f |
54 | # beginning vertex |
3bea4c16 |
55 | vertex v4 2.5 5 ${z4} |
56 | # ending vertex |
57 | vertex v5 2.5 5 -${z4} |
58 | |
59 | # top triangle |
60 | vertex v1 0 0 ${z1} |
61 | vertex v2 5 5 ${z1} |
62 | vertex v3 0 10 ${z1} |
63 | |
64 | edge e1 v1 v2 |
65 | edge e2 v2 v3 |
66 | edge e3 v3 v1 |
67 | |
68 | wire w1 e1 e2 e3 |
69 | |
70 | # top quadrangle |
71 | vertex v11 15 15 ${z2} |
72 | vertex v12 -15 15 ${z2} |
73 | vertex v13 -15 -15 ${z2} |
74 | vertex v14 15 -15 ${z2} |
75 | |
76 | edge e11 v11 v12 |
77 | edge e12 v12 v13 |
78 | edge e13 v13 v14 |
79 | edge e14 v14 v11 |
80 | |
81 | wire w11 e11 e12 e13 e14 |
82 | |
83 | # top octagon |
84 | vertex v21 25 25 ${z3} |
85 | vertex v22 -25 25 ${z3} |
86 | vertex v23 -30 10 ${z3} |
87 | vertex v24 -30 -10 ${z3} |
88 | vertex v25 -25 -25 ${z3} |
89 | vertex v26 25 -25 ${z3} |
90 | vertex v27 30 -10 ${z3} |
91 | vertex v28 30 10 ${z3} |
92 | |
93 | edge e21 v21 v22 |
94 | edge e22 v22 v23 |
95 | edge e23 v23 v24 |
96 | edge e24 v24 v25 |
97 | edge e25 v25 v26 |
98 | edge e26 v26 v27 |
99 | edge e27 v27 v28 |
100 | edge e28 v28 v21 |
101 | |
102 | wire w21 e21 e22 e23 e24 e25 e26 e27 e28 |
103 | |
104 | # bottom quadrangle |
105 | vertex v111 15 15 -${z2} |
106 | vertex v112 -15 15 -${z2} |
107 | vertex v113 -15 -15 -${z2} |
108 | vertex v114 15 -15 -${z2} |
109 | |
110 | edge e111 v111 v112 |
111 | edge e112 v112 v113 |
112 | edge e113 v113 v114 |
113 | edge e114 v114 v111 |
114 | |
115 | wire w111 e111 e112 e113 e114 |
116 | |
117 | # bottom triangle |
118 | vertex v101 0 0 -${z1} |
119 | vertex v102 5 5 -${z1} |
120 | vertex v103 0 10 -${z1} |
121 | |
122 | edge e101 v101 v102 |
123 | edge e102 v102 v103 |
124 | edge e103 v103 v101 |
125 | |
126 | wire w101 e101 e102 e103 |
127 | |
128 | |
129 | # |
130 | set issolid 1 |
131 | set isruled 1 |
132 | thrusections result ${issolid} ${isruled} v4 w1 w11 w21 w111 w101 v5 |
133 | |
134 | |
58cf74e0 |
135 | checkprops result -s 12301.8 |
3bea4c16 |
136 | |
137 | |
a4eba920 |
138 | checknbshapes result -vertex 57 -edge 121 -wire 66 -face 66 -shell 1 -solid 1 -compsolid 0 -compound 0 -shape 312 |
3bea4c16 |
139 | |
140 | |
141 | set index [lsearch [whatis result] Closed] |
142 | if {$index == -1} { |
143 | puts "Faulty ${BugNumber} : result is not Closed shape" |
144 | |
145 | } |
146 | |
3bea4c16 |
147 | |