1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64
|
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_f1.brep] f1
restore [locate_data_file bug25292_f2.brep] 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-3
if {${Toler} > ${MaxTol}} {
puts "Error: Tolerance is too big!"
}
set GoodNbCurv 2
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-4
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-4
set D_good 0.
checkList ${List2} ${Tolerance} ${D_good}
smallview
fit
set only_screen_axo 1
|