1
0
mirror of https://git.dev.opencascade.org/repos/occt.git synced 2025-08-14 13:30:48 +03:00
Files
occt/tests/bugs/modalg_2/bug22967
nbv e8feb725a4 0025465: Excess vertex in the result of CUT operation
Branches CR25465 and CR25488 were squashed and rebased on the current MASTER (12/01/2014)
2014-12-04 15:46:40 +03:00

60 lines
1.5 KiB
Plaintext
Executable File

puts "============"
puts "OCC22967"
puts "============"
puts ""
############################################################################################################
# Boolean operations between two cylinders with orthogonal axis generate a shape with big vertex tolerance
###########################################################################################################
set BugNumber OCC22967
set check_value 8.46459e-006
restore [locate_data_file bug22967_Cylinder_1.brep] b1
restore [locate_data_file bug22967_Scale_1.brep] b2
bop b1 b2
bopfuse result
set info [ maxtolerance result ]
regexp {Edge[ \t]*:.*Max[ \t]*([-0-9.+eE]+)} $info full last1
regexp {Vertex[ \t]*:.*Max[ \t]*([-0-9.+eE]+)} $info full last
proc GetPercent {Value GoodValue} {
set Percent 0.
if {${GoodValue} != 0.} {
set Percent [expr abs(${Value} - ${GoodValue}) / abs(double(${GoodValue})) * 100.]
} elseif {${Value} != 0.} {
set Percent [expr abs(${GoodValue} - ${Value}) / abs(double(${Value})) * 100.]
} else {
set Percent 0.
}
return ${Percent}
}
set percent_max 5
set status 0
set Tolerance_percent [expr abs ( [GetPercent ${last} ${check_value}] ) ]
if {${Tolerance_percent} > ${percent_max}} {
set status 1
} else {
set status 0
}
set Tolerance_percent [expr abs ( [GetPercent ${last1} ${check_value}] ) ]
if {${Tolerance_percent} > ${percent_max}} {
set status 1
} else {
set status 0
}
# Resume
if {${status} > 0} {
puts "${BugNumber}: Faulty"
} else {
puts "OK ${BugNumber}"
}
set square 668843
set 2dviewer 0