puts "========="
puts "OCC24825"
puts "========="
puts ""
###########################################################
# Fit Boolean Operation Algorithm to treat multiple arguments.
###########################################################

restore [locate_data_file bug24825_steering-wheel-ring1.brep] b1
restore [locate_data_file bug24825_steering-wheel-ring2.brep] b2
restore [locate_data_file bug24825_steering-wheel-drum.brep] b4
restore [locate_data_file bug24825_steering-wheel-handle.brep] hb

set qs {}

set N 10
set N1 [expr 360. / $N ]
 
for {set i 0} {$i < $N} {incr i} {
  tcopy hb hb_${i}
  trotate hb_${i} 0. 0. 0. 0. 0. 1. [expr $i * $N1 ]  
  lappend qs hb_${i}
}
eval compound $qs b3

tcopy b1 b5
ttranslate b5 0 0 100

tcopy b2 b6
ttranslate b6 0 0 100

tcopy b3 b7
ttranslate b7 0 0 100

#-fuse-#

bclearobjects
bcleartools
baddobjects b2 b6 b4
baddtools b1 b5 
baddctools b3
baddctools b7

bfillds
bbop result 1

set square 157211

set nb_v_good 280
set nb_e_good 338
set nb_w_good 142
set nb_f_good 80
set nb_sh_good 1
set nb_sol_good 1
set nb_compsol_good 0
set nb_compound_good 1
set nb_shape_good 843

set 2dviewer 1
