61c421bf |
1 | puts "TODO OCC11111 ALL: Faulty OCC1651" |
2 | |
3 | pload QAcommands |
4 | |
5 | puts "============" |
6 | puts "OCC1651" |
7 | puts "============" |
8 | puts "" |
9 | ###################################################### |
10 | # No intersection found using BRepClass3d_Intersector3d |
11 | ###################################################### |
12 | |
13 | restore [locate_data_file OCC1651.brep] face |
14 | |
15 | checkshape face |
16 | |
17 | set PntX 164.6207 |
18 | set PntY -105.2869 |
19 | set PntZ 557.8805 |
20 | set DirX 0.5774 |
21 | set DirY -0.5774 |
22 | set DirZ 0.5774 |
23 | |
24 | if { [catch { set PointList [OCC1651 face ${PntX} ${PntY} ${PntZ} ${DirX} ${DirY} ${DirZ}] } catch_result] } { |
25 | puts "Faulty OCC1651" |
26 | } else { |
27 | set ll [ llength ${PointList} ] |
28 | if {${ll} != 3} { |
29 | puts "Faulty OCC1651" |
30 | } else { |
31 | set IntersectionPointX [lindex ${PointList} 0] |
32 | set IntersectionPointY [lindex ${PointList} 1] |
33 | set IntersectionPointZ [lindex ${PointList} 2] |
34 | |
35 | set good_IntersectionPointX 42.6199 |
36 | set good_IntersectionPointY 16.7139 |
37 | set good_IntersectionPointZ 435.88 |
38 | |
39 | set X_percent [expr abs(${IntersectionPointX} - ${good_IntersectionPointX}) / double(${good_IntersectionPointX}) * 100.] |
40 | set Y_percent [expr abs(${IntersectionPointY} - ${good_IntersectionPointY}) / double(${good_IntersectionPointY}) * 100.] |
41 | set Z_percent [expr abs(${IntersectionPointZ} - ${good_IntersectionPointZ}) / double(${good_IntersectionPointZ}) * 100.] |
42 | |
43 | set percent_max 0.1 |
44 | |
45 | set IsGood 1 |
46 | if {${X_percent} > ${percent_max}} { |
47 | puts "OCC1651 Faulty" |
48 | set IsGood 0 |
49 | } |
50 | if {${Y_percent} > ${percent_max}} { |
51 | puts "OCC1651 Faulty" |
52 | set IsGood 0 |
53 | } |
54 | if {${Z_percent} > ${percent_max}} { |
55 | puts "OCC1651 Faulty" |
56 | set IsGood 0 |
57 | } |
58 | if {${IsGood} == 1} { |
59 | puts "OCC1651 OK" |
60 | } |
61 | } |
62 | } |
63 | |
64 | |