puts "============" puts "OCC5805" puts "OCC7582" puts "============" ####################################################################### # BRepOffsetAPI_MakeThickSolid behaves unstably and produces very different results. ####################################################################### # Bad result of offset operation ####################################################################### set BugNumber OCC5805 set z1 10 set z2 -10 # circle1 circle c1 0 0 ${z1} 5 mkedge ec1 c1 wire UpCover ec1 # circle2 circle c2 0 0 ${z2} 30 mkedge ec2 c2 wire BottomCover ec2 set issolid 1 set isruled 1 if [catch { thrusections s ${issolid} ${isruled} UpCover BottomCover } catch_result] { puts "Faulty ${BugNumber} : thrusections is wrong" } set distance -0.5 catch { OFFSETSHAPE $distance {} $calcul $type } set square 5829.59 set nb_v_good 2 set nb_e_good 3 set nb_w_good 3 set nb_f_good 3 set nb_sh_good 1 set nb_sol_good 1 set nb_compsol_good 0 set nb_compound_good 0 set nb_shape_good 13 set index [lsearch [whatis s] Closed] if {$index == -1} { puts "Faulty ${BugNumber} : s is not Closed shape" } set index [lsearch [whatis result] Closed] if {$index == -1} { puts "Faulty ${BugNumber} : result is not Closed shape" } set 2dviewer 0