puts "TODO OCC25929 ALL: Error: Tolerance is too big!"
puts "========="
puts "CR24915"
puts "========="
puts ""
###############################
## Wrong intersection curves between two cylinders
###############################

puts "##############################"
puts "#!!!Searh \"Attention\" keyword on this web-page for additinal checking!!!"
puts "##############################"

restore [locate_data_file bug24915_ft2.brep] b1
restore [locate_data_file bug24915_ft3.brep] b2

# 1. topology
bclearobjects
bcleartools
baddobjects b1 b2
bfillds
bbuild r
checkshape r

# 2. geometry
set MaxTol 5.0e-7
set log [bopcurves b1 b2]

mksurface s1 b1
mksurface s2 b2

regexp {Tolerance Reached=+([-0-9.+eE]+)\n+([-0-9.+eE]+)} ${log} full Toler NbCurv

if {${Toler} > ${MaxTol}} {
  puts "Error: Tolerance is too big!"
}

for {set i 1} {$i <= ${NbCurv}} {incr i} {
  bounds c_$i U1 U2
  dlog reset
  dlog on
  xdistcs c_$i s1 U1 U2 100
  set Log2 [dlog get]
  set List2 [split ${Log2} {TD= \t\n}]
  set Tolerance 2.0e-5
  set Limit_Tol 1.0e-7
  set D_good 0.
  catch {checkList ${List2} ${Tolerance} ${D_good} ${Limit_Tol}}

  dlog reset
  dlog on
  xdistcs c_$i s2 U1 U2 100
  set Log2 [dlog get]
  set List2 [split ${Log2} {TD= \t\n}]
  set Tolerance 2.0e-5
  set Limit_Tol 1.0e-7
  set D_good 0.
  catch {checkList ${List2} ${Tolerance} ${D_good} ${Limit_Tol}}
}

smallview
donly b2 c_2
fit
set only_screen_axo 1
