puts "TODO OCC11111 ALL: Faulty OCC21122" puts "============" puts "OCC21122" puts "============" puts "" ####################################################################### # Incremental mesh error ####################################################################### set BugNumber OCC21122 restore [locate_data_file OCC21122.brep] result tclean result set Deflection 0.1 catch {incmesh result ${Deflection} } set tri_info [trinfo result] regexp { +([-0-9.+eE]+) +triangles} $tri_info full tri regexp { +([-0-9.+eE]+) +nodes} $tri_info full nod regexp {Maximal deflection +([-0-9.+eE]+)} $tri_info full defl if { [string compare $tcl_platform(platform) "windows"] == 0 } { set good_tri 4322 set good_nod 4324 set good_defl 8.8817872205847652e-16 puts "OS = Windows NT" } else { puts "OS = Linux" set good_tri 4322 set good_nod 4324 set good_defl 8.8817872205847652e-16 } 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 0.1 set status 0 set triangle_percent [GetPercent ${tri} ${good_tri}] puts "triangle_percent = ${triangle_percent}" if { ${triangle_percent} > ${percent_max} } { puts "triangle: Faulty ${BugNumber}" set status 1 } else { puts "triangle: OK ${BugNumber}" } set node_percent [GetPercent ${nod} ${good_nod}] puts "node_percent = ${node_percent}" if { ${node_percent} > ${percent_max} } { puts "node: Faulty ${BugNumber}" set status 1 } else { puts "node: OK ${BugNumber}" } set deflection_percent [GetPercent ${defl} ${good_defl}] puts "deflection_percent = ${deflection_percent}" if { ${deflection_percent} > ${percent_max} } { puts "deflection: Faulty ${BugNumber}" set status 1 } else { puts "deflection: OK ${BugNumber}" } set square 275.426 set nb_v_good 964 set nb_e_good 964 set nb_w_good 1 set nb_f_good 1 set nb_sh_good 1 set nb_sol_good 0 set nb_compsol_good 0 set nb_compound_good 0 set nb_shape_good 1931 if { ${status} != 0 } { puts "Faulty ${BugNumber}" } else { puts "OK ${BugNumber}" } vinit vdisplay result vsetdispmode 1 vfit set only_screen 1