OSDN Git Service

hk
[psychlops/cpp_document.git] / Psychlops.manual / sample_cpp_file / 4�� / 4.1_�O�����u�̎g�p6.cpp
1 #include <psychlops.h>\r
2 using namespace Psychlops;\r
3 \r
4 double dcX,dcY, rectcol;\r
5 double rectsize=80;\r
6 int display_cursor=1, in_rect=0;\r
7 Psychlops::Rectangle rect(rectsize*2,rectsize*2);\r
8 Psychlops::Range rngx,rngy;\r
9 \r
10 void psychlops_main() {\r
11         \r
12         Canvas display(Canvas::fullscreen);\r
13         display.clear(Color::gray);\r
14         AppState::setThreadPriority(AppState::HIGH);\r
15         rect.centering();\r
16         dcX= display.getHcenter();\r
17         dcY= display.getVcenter();\r
18         Input::refresh();\r
19         \r
20         //Move mouse cursor to the center \r
21         Mouse::x=dcX;\r
22         Mouse::y=dcY;\r
23         \r
24         while(!Input::get(Keyboard::spc)){\r
25                 display.clear(Color::gray);\r
26                 rectcol=0.25;\r
27                 //set current rect area\r
28                 rect.getHcenter()-rectsize<rngx<rect.getHcenter()+rectsize;\r
29                 rect.getVcenter()-rectsize<rngy<rect.getVcenter()+rectsize;\r
30         \r
31                 if(display_cursor)Mouse::show();\r
32                         else Mouse::hide();\r
33                 \r
34                 if(Input::get(Mouse::right, Mouse::pushed))display_cursor=1-display_cursor;     \r
35                 if(in_rect){\r
36                         rect.centering(Mouse::x, Mouse::y);\r
37                         rectcol=1.0;\r
38                 }\r
39                         \r
40                 rect.draw(rectcol);\r
41                 display.flip();\r
42                 if(Input::get(Mouse::left, Mouse::pushed)){\r
43                                 if (rngx.includes(Mouse::x) && rngy.includes(Mouse::y))in_rect=1;\r
44                                         else in_rect=0;\r
45                 }\r
46                 if(Input::get(Mouse::left, Mouse::released))    {\r
47                                 if (rngx.includes(Mouse::x) && rngy.includes(Mouse::y))in_rect=0;\r
48                 }\r
49         }\r
50 }\r