1
0
mirror of https://git.dev.opencascade.org/repos/occt.git synced 2025-08-14 13:30:48 +03:00

Test for 0030396: Infinite recursion during ShapeFix after BRepAlgoAPI_Cut

Two test cases are added. One for Boolean operation (it is good, because BO has been fixed already), and another for fixshape operation (it causes Draw crash).
This commit is contained in:
msv
2018-12-20 17:10:00 +03:00
parent 3d999c6090
commit 1b25c97fbc
2 changed files with 45 additions and 0 deletions

View File

@@ -0,0 +1,34 @@
puts "========"
puts "0030396: Infinite recursion during ShapeFix after BRepAlgoAPI_Cut"
puts "========"
puts ""
# With this order of tools the operation produced bad result
set list(1) {a_2 a_3 a_4 a_5 a_6 a_7}
# With this order of tools the operation produced good result
set list(2) {a_6 a_2 a_7 a_3 a_4 a_5}
bfuzzyvalue 1e-2
bnondestructive 1
for {set i 1} { $i <= 2} {incr i} {
restore [locate_data_file bug30396.brep] a
explode a
bclearobjects
bcleartools
baddobjects a_1
eval baddtools $list($i)
bfillds
bbop r_$i 2
checknbshapes r_$i -solid 1 -shell 1
checkshape r_$i
if {![regexp "OK" [bopcheck r_$i]]} {
puts "Error: result $i is self-interfered shape"
}
}
checkprops r_1 -equal r_2
checkview -display r_2 -2d -path ${imagedir}/${test_image}.png

View File

@@ -0,0 +1,11 @@
puts "========"
puts "0030396: Infinite recursion during ShapeFix after BRepAlgoAPI_Cut"
puts "========"
puts ""
puts "TODO 30396 ALL:TEST INCOMPLETE"
# The shape bug30396_bad_result.brep has been saved in OCCT 7.3, before BO has been fixed.
restore [locate_data_file bug30396_bad_result.brep] a
# The Draw crashed here
fixshape r a