0027126: Create command checktrinfo to verify meshes
[occt.git] / tests / bugs / moddata_2 / bug332
CommitLineData
a87752f3 1puts "================"
2puts "OCC332"
3puts "================"
4puts ""
5
6pload QAcommands
7
8set wall_thickness 10
9set dia1 30
10set dia2 50
355c1551 11set ll 100
a87752f3 12set major_radius 200
13
355c1551 14OCC332 ${wall_thickness} ${dia1} ${dia2} ${ll} ${major_radius}
a87752f3 15
352ffd73 16checkshape wallSolid_
17checkshape gasSolid_
a87752f3 18
19
20vinit
21vdisplay wallSolid_
22vdisplay gasSolid_
4754e164 23vzfit
a87752f3 24
25
26explode wallSolid_ w
27
28vdisplay wallSolid__3
29vdisplay wallSolid__4
30vdisplay wallSolid__5
31vdisplay wallSolid__6
32
33set props_3 [lprops wallSolid__3]
34set props_4 [lprops wallSolid__4]
35set props_5 [lprops wallSolid__5]
36set props_6 [lprops wallSolid__6]
37
38#wire wallSolid__3
39set list [split ${props_3} "\n\t"]
40set listLength [llength ${list}]
41if { ${listLength} < 20 } {
42 puts "OCC332 - Error : listLength= ${listLength}"
43}
44
45regexp {Mass +: +([-0-9.+eE]+)} $props_3 full CircleLength_3
46
47#wire wallSolid__4
48set list [split ${props_4} "\n\t"]
49set listLength [llength ${list}]
50if { ${listLength} < 20 } {
51 puts "OCC332 - Error : listLength= ${listLength}"
52}
53
54regexp {Mass +: +([-0-9.+eE]+)} $props_4 full CircleLength_4
55
56#wire wallSolid__5
57set list [split ${props_5} "\n\t"]
58set listLength [llength ${list}]
59if { ${listLength} < 20 } {
60 puts "OCC332 - Error : listLength= ${listLength}"
61}
62
63regexp {Mass +: +([-0-9.+eE]+)} $props_5 full CircleLength_5
64
65#wire wallSolid__6
66set list [split ${props_6} "\n\t"]
67set listLength [llength ${list}]
68if { ${listLength} < 20 } {
69 puts "OCC332 - Error : listLength= ${listLength}"
70}
71
72regexp {Mass +: +([-0-9.+eE]+)} $props_6 full CircleLength_6
73
74# Calculation
1951a27c 75set Pi [expr 2. * asin(1.0)]
76set TheoryCircleLength_4 [expr ${Pi} * ${dia1}]
77set TheoryCircleLength_3 [expr ${Pi} * (${dia1} + 2 * ${wall_thickness}) ]
78set TheoryCircleLength_6 [expr ${Pi} * ${dia2}]
79set TheoryCircleLength_5 [expr ${Pi} * (${dia2} + 2 * ${wall_thickness}) ]
a87752f3 80
81set delta_3 [expr abs(${CircleLength_3} - ${TheoryCircleLength_3}) / ${TheoryCircleLength_3} * 100]
82set delta_4 [expr abs(${CircleLength_4} - ${TheoryCircleLength_4}) / ${TheoryCircleLength_4} * 100]
83set delta_5 [expr abs(${CircleLength_5} - ${TheoryCircleLength_5}) / ${TheoryCircleLength_5} * 100]
84set delta_6 [expr abs(${CircleLength_6} - ${TheoryCircleLength_6}) / ${TheoryCircleLength_6} * 100]
85
86set maxdelta 0.1
87
88if { ${delta_3} > ${maxdelta} } then {puts "OCC332 - Error : delta_3= ${delta_3}"}
89if { ${delta_4} > ${maxdelta} } then {puts "OCC332 - Error : delta_4= ${delta_4}"}
90if { ${delta_5} > ${maxdelta} } then {puts "OCC332 - Error : delta_5= ${delta_5}"}
91if { ${delta_6} > ${maxdelta} } then {puts "OCC332 - Error : delta_6= ${delta_6}"}
92
93if { ${delta_3} <= ${maxdelta} && ${delta_4} <= ${maxdelta} && ${delta_5} <= ${maxdelta} && ${delta_6} <= ${maxdelta} } then {
94 puts "OCC332: OK"
95}
96puts "CircleLength_3 = ${CircleLength_3}"
97puts "CircleLength_4 = ${CircleLength_4}"
98puts "CircleLength_5 = ${CircleLength_5}"
99puts "CircleLength_6 = ${CircleLength_6}"
100
5747059b 101checkview -screenshot -3d -path ${imagedir}/${test_image}.png
a87752f3 102
103
104