1
0
mirror of https://git.dev.opencascade.org/repos/occt.git synced 2025-04-03 17:56:21 +03:00
aml 032d027214 0025407: Exception in extrema operation.
Special handling of curve / surface of extrusion case is deleted.
Corresponding test case fixed.

Test cases for issue CR25407
2014-10-30 11:46:34 +03:00

48 lines
1.0 KiB
Plaintext
Executable File

puts "========"
puts "OCC163"
puts "========"
puts ""
###########################################################
## The result of extrema command is not correct.
## Extrema command return max, but it acceptable because relative error near 1.0e-30.
###########################################################
restore [locate_data_file OCC130.brep] res
checkshape res
line l -120 -100 400 0 0 1
mksurface s res
set che [extrema l s]
set err [llength $che]
# Amount Check
if { $err != 1} {
puts "Error: Invalid extrema number"
}
set status 0
set info [dump ext_1]
regexp "Parameters : 0 +(\[-0-9*\.+eE\]+)" $info full extLength
# Test max
if { $extLength > 35 && $extLength < 36} {
set good_dist 35.6687907545308
checkreal "Max distance:" ${extLength} ${good_dist} 0.01 0.01
set status 1
}
# Test min
if {$extLength > 0 && $extLength < 1} {
set good_dist 0.0
checkreal "Min distance:" ${extLength} ${good_dist} 0.01 0.01
set status 1
}
# Not min or max
if {$status == 0} {
puts "Error: wrong extrema point"
}