puts "TODO OCC225404 Debian60-64 Windows: Error: Curve Number is bad!" puts "================" puts "OCC25292" puts "================" puts "" ####################################################################### # Face/Face intersection algorithm gives different results for different order of the arguments ####################################################################### # bopcurves command restore [locate_data_file bug25292_Input_0.brep] b1 restore [locate_data_file bug25292_Input_1.brep] b2 explode b1 f copy b1_2 f1 explode b2 f copy b2_2 f2 ############################# set log [bopcurves f2 f1 -2d] ############################# regexp {Tolerance Reached=+([-0-9.+eE]+)\n+([-0-9.+eE]+)} ${log} full Toler NbCurv set MaxTol 1.e-7 if {${Toler} > ${MaxTol}} { puts "Error: Tolerance is too big!" } set GoodNbCurv 7 if {${NbCurv} != ${GoodNbCurv}} { puts "Error: Curve Number is bad!" } #------------- # 1 puts "" puts "First curve" mksurface s1 f1 mksurface s2 f2 dlog reset dlog on xdistcs c_1 s1 0 1 10 set Log1 [dlog get] set List1 [split ${Log1} {TD= \t\n}] set Tolerance 1.0e-7 set D_good 0. checkList ${List1} ${Tolerance} ${D_good} # 2 puts "" puts "Second curve" dlog reset dlog on xdistcs c_2 s1 0 1 10 set Log2 [dlog get] set List2 [split ${Log2} {TD= \t\n}] set Tolerance 1.0e-7 set D_good 0. checkList ${List2} ${Tolerance} ${D_good} # 3 puts "" puts "Third curve" dlog reset dlog on xdistcs c_3 s1 0 1 10 set Log3 [dlog get] set List3 [split ${Log3} {TD= \t\n}] set Tolerance 1.0e-7 set D_good 0. checkList ${List3} ${Tolerance} ${D_good} # 4 puts "" puts "Fourth curve" dlog reset dlog on xdistcs c_4 s1 0 1 10 set Log4 [dlog get] set List4 [split ${Log4} {TD= \t\n}] set Tolerance 1.0e-7 set D_good 0. checkList ${List4} ${Tolerance} ${D_good} # 5 if { [info exist c_5] } { puts "" puts "Fifth curve" dlog reset dlog on xdistcs c_5 s1 0 1 10 set Log5 [dlog get] set List5 [split ${Log5} {TD= \t\n}] set Tolerance 1.0e-7 set D_good 0. checkList ${List5} ${Tolerance} ${D_good} } # 6 if { [info exist c_6] } { puts "" puts "Sixth curve" dlog reset dlog on xdistcs c_6 s1 0 1 10 set Log6 [dlog get] set List6 [split ${Log6} {TD= \t\n}] set Tolerance 1.0e-7 set D_good 0. checkList ${List6} ${Tolerance} ${D_good} } # 7 if { [info exist c_7] } { puts "" puts "Seventh curve" dlog reset dlog on xdistcs c_7 s1 0 1 10 set Log7 [dlog get] set List7 [split ${Log7} {TD= \t\n}] set Tolerance 1.0e-7 set D_good 0. checkList ${List7} ${Tolerance} ${D_good} } v2d 2dfit set only_screen_axo 1