0026237: Change platform in TODOs from Debian\Mandriva to Linux
[occt.git] / tests / bugs / moddata_1 / bug22759
CommitLineData
3bea4c16 1puts "============"
2puts "OCC22759"
3puts "============"
4puts ""
5#######################################################################
6# Crash during shape visualization
7#######################################################################
8
9set BugNumber OCC22759
10
11catch { pload XDE }
12
9aa684ed 13cpulimit 400
14
3bea4c16 15restore [locate_data_file OCC22759-weldt6.brep] result
16checkshape result
17tclean result
18
19set Deflection 0.001
20incmesh result ${Deflection}
21
22set tri_info [trinfo result]
23regexp { +([-0-9.+eE]+) +triangles} $tri_info full tri
24regexp { +([-0-9.+eE]+) +nodes} $tri_info full nod
25
26regexp {deflection +([-0-9.+eE]+)} $tri_info full defl
27
37d6975c 28set env(os_type) $tcl_platform(platform)
29if { [string compare $env(os_type) "windows"] != 0 } {
3bea4c16 30 puts "OS = Linux"
ec26bf88 31 set good_tri 520414
32 set good_nod 263938
9aa684ed 33 set good_defl 0.0026800432954056617
34} else {
35 puts "OS = Windows NT"
ec26bf88 36 set good_tri 520414
37 set good_nod 263938
c1e0171c 38 set good_defl 0.0026800432954056617
3bea4c16 39}
40
41proc GetPercent {Value GoodValue} {
42 set Percent 0.
43 if {${GoodValue} != 0.} {
44 set Percent [expr abs(${Value} - ${GoodValue}) / abs(double(${GoodValue})) * 100.]
45 } elseif {${Value} != 0.} {
46 set Percent [expr abs(${GoodValue} - ${Value}) / abs(double(${Value})) * 100.]
47 } else {
48 set Percent 0.
49 }
50 return ${Percent}
51}
52
53set percent_max 0.1
54set status 0
55
56set triangle_percent [GetPercent ${tri} ${good_tri}]
57puts "triangle_percent = ${triangle_percent}"
58if { ${triangle_percent} > ${percent_max} } {
59 puts "triangle: Faulty ${BugNumber}"
60 set status 1
61} else {
62 puts "triangle: OK ${BugNumber}"
63}
64
65set node_percent [GetPercent ${nod} ${good_nod}]
66puts "node_percent = ${node_percent}"
67if { ${node_percent} > ${percent_max} } {
68 puts "node: Faulty ${BugNumber}"
69 set status 1
70} else {
71 puts "node: OK ${BugNumber}"
72}
73
74set deflection_percent [GetPercent ${defl} ${good_defl}]
75puts "deflection_percent = ${deflection_percent}"
76if { ${deflection_percent} > ${percent_max} } {
77 puts "deflection: Faulty ${BugNumber}"
78 set status 1
79} else {
80 puts "deflection: OK ${BugNumber}"
81}
82
83# Resume
84puts ""
85if { ${status} != 0 } {
86 puts "Faulty ${BugNumber}"
87} else {
88 puts "OK ${BugNumber}"
89}
90
91vinit
92vdisplay result
93vfit
94
95vsetdispmode 1
96
97set only_screen 1
9aa684ed 98set square 9951.34