3bea4c16 |
1 | puts "========================" |
2 | puts "OCC22804" |
3 | puts "========================" |
4 | puts "" |
5 | ####################################################################### |
6 | # Sewing increases tolerance of vertices for redundant value. |
7 | ####################################################################### |
8 | |
9 | set BugNumber OCC22804 |
10 | |
11 | catch {pload XDE} |
12 | |
13 | restore [locate_data_file OCC22804-sew_bug.brep] a |
14 | |
15 | set tol 200 |
16 | sewing result ${tol} a |
17 | |
18 | set ToleranceList [tolerance result] |
19 | regexp {Tolerance MAX=([-0-9.+eE]+)} $ToleranceList full oTolerance |
20 | regexp {FACE[ \t]*: MAX=([-0-9.+eE]+)} $ToleranceList full FaceTolerance |
21 | regexp {EDGE[ \t]*: MAX=([-0-9.+eE]+)} $ToleranceList full EdgeTolerance |
22 | regexp {VERTEX[ \t]*: MAX=([-0-9.+eE]+)} $ToleranceList full VertexTolerance |
23 | |
24 | set percent_max 0.1 |
25 | |
26 | proc GetPercent {Value GoodValue} { |
27 | set Percent 0. |
28 | if {${GoodValue} != 0.} { |
29 | set Percent [expr abs(${Value} - ${GoodValue}) / abs(double(${GoodValue})) * 100.] |
30 | } elseif {${Value} != 0.} { |
31 | set Percent [expr abs(${GoodValue} - ${Value}) / abs(double(${Value})) * 100.] |
32 | } else { |
33 | set Percent 0. |
34 | } |
35 | return ${Percent} |
36 | } |
37 | set IsOk 1 |
38 | |
39 | set minTolerance ${EdgeTolerance} |
40 | if { ${minTolerance} > ${VertexTolerance} } { |
41 | set minTolerance $(VertexTolerance) |
42 | } |
43 | |
44 | set minTolerance_percent [GetPercent ${minTolerance} ${oTolerance}] |
45 | puts "minTolerance_percent = ${minTolerance_percent} %" |
46 | if { ${minTolerance_percent} > ${percent_max} } { |
47 | set IsOk 0 |
48 | } |
49 | |
50 | if { ${IsOk} == 0 } { |
51 | puts "${BugNumber}: Faulty" |
52 | } else { |
53 | puts "${BugNumber}: OK" |
54 | } |
55 | |
fb60057d |
56 | checkmaxtol result -ref 2279.641703013865 |
5ae01c85 |
57 | checknbshapes result -shell 1 |
58 | checkfreebounds result 5 |
59 | |
3bea4c16 |
60 | set square 1.22542e+09 |
61 | set 2dviewer 0 |