0024564: Select3D_SensitiveFace gives inaccurate picking depth for AIS_Plane (interio...
[occt.git] / tests / bugs / vis / bug232
1 puts "========"
2 puts "OCC232"
3 puts "Pick filter does NOT work for TopAbs_COMPSOLID topology"
4 puts "========"
5
6 vinit
7 OCC232
8 vfit
9
10 # selected point of first CompSolid
11 set x1 69
12 set y1 204
13
14 set x2 116
15 set y2 231
16
17 #set x3 160; set y3 257 - it's bad for lin,aki.
18 set x3 159
19 set y3 256
20
21 # selected point of second CompSolid
22 set x4 298
23 set y4 76
24
25 set x5 339
26 set y5 100
27
28 set x6 381
29 set y6 124
30
31 set Cyan_R 0
32 set Cyan_G 1
33 set Cyan_B 1
34
35 set Yellow_R 1
36 set Yellow_G 1
37 set Yellow_B 0
38
39 # There is not selection
40 puts "There is not selection"
41 catch {QAGetPixelColor $x1 $y1 $Yellow_R $Yellow_G $Yellow_B} result11
42 catch {QAGetPixelColor $x2 $y2 $Yellow_R $Yellow_G $Yellow_B} result12
43 catch {QAGetPixelColor $x3 $y3 $Yellow_R $Yellow_G $Yellow_B} result13
44 catch {QAGetPixelColor $x4 $y4 $Yellow_R $Yellow_G $Yellow_B} result14
45 catch {QAGetPixelColor $x5 $y5 $Yellow_R $Yellow_G $Yellow_B} result15
46 catch {QAGetPixelColor $x6 $y6 $Yellow_R $Yellow_G $Yellow_B} result16
47
48 # Move a mouse
49 puts "Move a mouse"
50 vmoveto $x2 $y2
51
52 # Second box of first CompSolid is selected
53 puts "Second box of first CompSolid is selected"
54 catch {QAGetPixelColor $x1 $y1 $Yellow_R $Yellow_G $Yellow_B} result21
55 catch {QAGetPixelColor $x3 $y3 $Yellow_R $Yellow_G $Yellow_B} result22
56 catch {QAGetPixelColor $x4 $y4 $Yellow_R $Yellow_G $Yellow_B} result23
57 catch {QAGetPixelColor $x5 $y5 $Yellow_R $Yellow_G $Yellow_B} result24
58 catch {QAGetPixelColor $x6 $y6 $Yellow_R $Yellow_G $Yellow_B} result25
59
60 if { [array get env os_type] != "" } {
61     set os $env(os_type)
62 }
63 if { [string compare $os "windows"] != 0 } {
64    catch {QAGetPixelColor $x2 $y2 $Cyan_R $Cyan_G $Cyan_B} result31
65 }
66
67 set IsFaulty 0
68 if { [regexp "Faulty" $result11] == 1 } {
69    set IsFaulty 1
70 }
71 if { [regexp "Faulty" $result12] == 1 } {
72    set IsFaulty 1
73 }
74 if { [regexp "Faulty" $result13] == 1 } {
75    set IsFaulty 1
76 }
77 if { [regexp "Faulty" $result14] == 1 } {
78    set IsFaulty 1
79 }
80 if { [regexp "Faulty" $result15] == 1 } {
81    set IsFaulty 1
82 }
83 if { [regexp "Faulty" $result16] == 1 } {
84    set IsFaulty 1
85 }
86 if { [regexp "Faulty" $result21] == 1 } {
87    set IsFaulty 1
88 }
89 if { [regexp "Faulty" $result22] == 1 } {
90    set IsFaulty 1
91 }
92 if { [regexp "Faulty" $result23] == 1 } {
93    set IsFaulty 1
94 }
95 if { [regexp "Faulty" $result24] == 1 } {
96    set IsFaulty 1
97 }
98 if { [regexp "Faulty" $result25] == 1 } {
99    set IsFaulty 1
100 }
101
102 if { [string compare $os "windows"] != 0 } {
103    if { [regexp "Faulty" $result31] == 1 } {
104       set IsFaulty 1
105    }
106 }
107
108 if {$IsFaulty != 0} {
109    puts "Error : OCC232"
110 }
111
112 set only_screen 1