4473e336 |
1 | puts "========" |
2 | puts "0030396: Infinite recursion during ShapeFix after BRepAlgoAPI_Cut" |
3 | puts "========" |
4 | puts "" |
5 | |
6 | # With this order of tools the operation produced bad result |
7 | set list(1) {a_2 a_3 a_4 a_5 a_6 a_7} |
8 | # With this order of tools the operation produced good result |
9 | set list(2) {a_6 a_2 a_7 a_3 a_4 a_5} |
10 | |
11 | set nbw {33 23 29 0} |
12 | set nbf {33 17 23 0} |
13 | set nbsh {6 1 1 0} |
14 | set nbso {6 1 1 0} |
15 | set vol {3.24433 11.1953 7.95093 empty} |
16 | set area {25.9962 58.8635 53.1541 empty} |
17 | set nameop {common fuse cut cut21} |
18 | |
19 | bfuzzyvalue 1e-2 |
20 | bnondestructive 1 |
21 | |
22 | for {set i 1} { $i <= 2} {incr i} { |
23 | |
24 | restore [locate_data_file bug30396.brep] a |
25 | explode a |
26 | |
27 | bclearobjects |
28 | bcleartools |
29 | baddobjects a_1 |
30 | eval baddtools $list($i) |
31 | bfillds |
32 | |
33 | for {set iop 0} {$iop < 4} {incr iop} { |
34 | set oper [lindex $nameop $iop] |
35 | bbop r_${i}_$oper $iop |
36 | checknbshapes r_${i}_$oper -wire [lindex $nbw $iop] -face [lindex $nbf $iop]\ |
37 | -solid [lindex $nbso $iop] -shell [lindex $nbsh $iop] |
38 | checkprops r_${i}_$oper -v [lindex $vol $iop] -s [lindex $area $iop] |
39 | checkshape r_${i}_$oper |
40 | if {![regexp "OK" [bopcheck r_${i}_$oper]]} { |
41 | puts "Error: result $i of $oper is self-interfered shape" |
42 | } |
43 | } |
44 | } |
45 | |
46 | boptions -default |
47 | checkview -display r_1_cut -2d -path ${imagedir}/${test_image}.png |