1
0
mirror of https://git.dev.opencascade.org/repos/occt.git synced 2025-04-21 10:13:43 +03:00
occt/tests/bugs/modalg_5/bug24915
nbv 23ea021260 0026310: Very slow boolean cut operations on cylinders
1. JoinWLines algorithm has been improved.
2. Reference to the V-boundaries is deleted when computing step.
3. Decreasing the tolerance when computing parameters of WLine.
4. Adding boundary point is forbidden if it lies in prolongation of found ones.
5. Possible reason of exception has been eliminated.
6. Processing of critical point has been improved.

Test cases for this issue have been created.
Correction of some test case(s).

Test case bugs/modalg_6/bug26310_4 is added

Update of test-cases for issue #26310
2015-09-02 14:39:52 +03:00

65 lines
1.4 KiB
Plaintext
Executable File

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