3bea4c16 |
1 | puts "========================" |
2 | puts "OCC22907" |
3 | puts "========================" |
4 | puts "" |
5 | ####################################################################### |
6 | # The function 'distmini' produces wrong result. |
7 | ####################################################################### |
8 | |
9 | set BugNumber OCC22907 |
10 | |
11 | ###rename to bug22907_e.brep |
12 | restore [locate_data_file bug22907_e.brep] b2 |
13 | vertex b1 -15.652187256227142 3.2012899919486513 9.9763479999999998 |
14 | |
15 | distmini d b1 b2 |
16 | puts "Distance=[dval d_val]" |
17 | |
18 | set Good_Distance 0 |
19 | |
20 | regexp {Vertex *: Min [-0-9.+eE]+ *Max *([-0-9.+eE]+)} [maxtolerance b1] full tol1 |
21 | regexp {Edge *: Min [-0-9.+eE]+ *Max *([-0-9.+eE]+)} [maxtolerance b2] full tol2 |
22 | regexp {Vertex *: Min [-0-9.+eE]+ *Max *([-0-9.+eE]+)} [maxtolerance b2] full tol3 |
23 | |
24 | set max_tolerance ${tol1} |
25 | if { ${tol2} > ${max_tolerance} } { |
26 | set max_tolerance ${tol2} |
27 | } |
28 | if { ${tol3} > ${max_tolerance} } { |
29 | set max_tolerance ${tol3} |
30 | } |
31 | puts "max_tolerance=${max_tolerance}" |
32 | |
33 | if [expr abs( [dval d_val] - ${Good_Distance}) > ${max_tolerance}] { |
34 | set status 1 |
35 | } else { |
36 | set status 0 |
37 | } |
38 | |
39 | # Resume |
40 | puts "" |
41 | if { ${status} == 1 } { |
42 | puts "Faulty ${BugNumber}" |
43 | } else { |
44 | puts "OK ${BugNumber}" |
45 | } |
46 | vinit |
47 | vdisplay b1 b2 |
48 | vfit |
49 | |
50 | set only_screen 0 |