OSDN Git Service

pooling
[psychlops/silverlight.git] / test4 / Store.cs
1 /*\r
2 using Psychlops;\r
3 \r
4 namespace PsychlopsSilverlight4test\r
5 {\r
6         public class PsychlopsMain\r
7         {\r
8                 public void psychlops_main()\r
9                 {\r
10                         Canvas window = new Canvas(300, 300);\r
11 \r
12                         var figure_r = new Rectangle();\r
13                         var figure_e = new Ellipse();\r
14                         figure_r.set(100,100).centering().shift(0, 0);\r
15                         figure_e.set(100,100).centering().shift(0, 0);\r
16 \r
17                         while (!Keyboard.esc.pushed())\r
18                         {\r
19                                 figure_r.fill = new Color(0, 0, 1);\r
20                                 figure_r.centering(new Point(100,100)).draw();\r
21                                 figure_e.fill = new Color(1, 0, 0);\r
22                                 figure_e.centering(new Point(100, 100)).draw();\r
23                                 window.flip();\r
24                         }\r
25                 }\r
26         }\r
27 \r
28 }\r
29 \r
30 /*\r
31 \r
32 \r
33 \r
34 using Psychlops;\r
35 \r
36 namespace PsychlopsSilverlight4test\r
37 {\r
38         public class PsychlopsMain\r
39         {\r
40                 public void psychlops_main()\r
41                 {\r
42                         var figure_type = Psychlops.Widgets.Browser.Element.byID("FIGURE");\r
43                         var size_x = Psychlops.Widgets.Browser.Element.byID("SIZE_X");\r
44                         var size_y = Psychlops.Widgets.Browser.Element.byID("SIZE_Y");\r
45                         var color_r = Psychlops.Widgets.Browser.Element.byID("COLOR_R");\r
46                         var color_g = Psychlops.Widgets.Browser.Element.byID("COLOR_G");\r
47                         var color_b = Psychlops.Widgets.Browser.Element.byID("COLOR_B");\r
48 \r
49                         Canvas window = new Canvas(300, 300);\r
50 \r
51                         var figure_r = new Rectangle();\r
52                         var figure_e = new Ellipse();\r
53                         figure_r.centering().shift(0, 0);\r
54                         figure_e.centering().shift(0, 0);\r
55 \r
56                         int frame = 0;\r
57                         int direction = 1, motion_dir = 1;\r
58 \r
59                         while (!Keyboard.esc.pushed())\r
60                         {\r
61                                 window.clear();\r
62 \r
63                                 if (frame % 30 == 0)\r
64                                 {\r
65                                         direction = direction * -1;\r
66 \r
67                                 }\r
68 \r
69                                 if (frame % 90 == 0)\r
70                                 {\r
71                                         motion_dir *= -1;\r
72                                 }\r
73 \r
74                                 figure_r.resize(figure_r.getWidth() + direction * 1, figure_r.getHeight() + direction * 1);\r
75                                 figure_r.shift(motion_dir * 1, 0);\r
76                                 figure_r.fill = new Color(color_r, color_g, color_b);\r
77 \r
78                                 figure_e.resize(figure_e.getWidth() + direction * 1, figure_e.getHeight() + direction * 1);\r
79                                 figure_e.shift(motion_dir * 1, 0);\r
80                                 figure_e.fill = new Color(color_r, color_g, color_b);\r
81 \r
82                                 if (System.String.Compare(figure_type, "Rectangle") == 0)\r
83                                 {\r
84                                         figure_r.draw();\r
85                                 }\r
86                                 else\r
87                                 {\r
88                                         figure_e.draw();\r
89                                 }\r
90 \r
91 \r
92                                 frame++;\r
93 \r
94 \r
95                                 window.flip();\r
96                         }\r
97                 }\r
98         }\r
99 \r
100 }\r
101  * */\r
102 \r
103 \r
104 /*\r
105 using Psychlops;\r
106 \r
107 namespace PsychlopsSilverlight4test\r
108 {\r
109         public class PsychlopsMain\r
110         {\r
111                 public void psychlops_main()\r
112                 {\r
113                         var figure_type = Psychlops.Widgets.Browser.Element.byID("FIGURE");\r
114                         var size_x = Psychlops.Widgets.Browser.Element.byID("SIZE_X");\r
115                         var size_y = Psychlops.Widgets.Browser.Element.byID("SIZE_Y");\r
116                         var shift_x = Psychlops.Widgets.Browser.Element.byID("SHIFT_X");\r
117                         var shift_y = Psychlops.Widgets.Browser.Element.byID("SHIFT_Y");\r
118                         var color_r = Psychlops.Widgets.Browser.Element.byID("COLOR_R");\r
119                         var color_g = Psychlops.Widgets.Browser.Element.byID("COLOR_G");\r
120                         var color_b = Psychlops.Widgets.Browser.Element.byID("COLOR_B");\r
121 \r
122                         Canvas window = new Canvas(300, 300);\r
123 \r
124                         var figure_r = new Rectangle();\r
125                         var figure_e = new Ellipse();\r
126                         Shape figure = figure_r;\r
127                         \r
128                         while (!Keyboard.esc.pushed())\r
129                         {\r
130                                 if (System.String.Compare(figure_type, "Rectangle") == 0)\r
131                                 {\r
132                                         figure_r.set(size_x, size_y);\r
133                                         figure = figure_r;\r
134                                 }\r
135                                 else\r
136                                 {\r
137                                         figure_e.set(size_x, size_y);\r
138                                         figure = figure_e;\r
139                                 }\r
140                                 figure.fill = new Color(color_r, color_g, color_b);\r
141 \r
142                                 window.clear(Color.black);\r
143                                 figure.centering().shift(shift_x, shift_y).draw();\r
144                                 window.flip();\r
145                         }\r
146                 }\r
147         }\r
148 \r
149 }\r
150 */\r
151 \r
152 \r
153 /*\r
154 using Psychlops;\r
155 \r
156 namespace Psychlops\r
157 {\r
158 \r
159         public class RandomDots\r
160         {\r
161                 Rectangle dot;\r
162                 public Point[] cood;\r
163                 public RandomDots()\r
164                 {\r
165                         cood = new Point[250];\r
166                         dot = new Rectangle(5, 5);\r
167                 }\r
168                 public void draw()\r
169                 {\r
170                         dot.fill = Color.white;\r
171                         foreach (Point p in cood)\r
172                         {\r
173                                 dot.centering(p).draw();\r
174                         }\r
175                 }\r
176         }\r
177 \r
178 }\r
179 \r
180 \r
181 namespace PsychlopsSilverlight4test\r
182 {\r
183 \r
184         public class PsychlopsMain\r
185         {\r
186                 Canvas cnvs;\r
187                 Image img;\r
188                 Rectangle fixation;\r
189                 Shape shape;\r
190                 Color col;\r
191                 int isize = 100;\r
192                 double tfreq = 1;\r
193                 int frames;\r
194                 RandomDots dots;\r
195 \r
196                 public void psychlops_main()\r
197                 {\r
198                         cnvs = new Canvas(500, 500);\r
199                         img = new Image(isize * 2, isize * 2);\r
200                         fixation = new Rectangle(10, 10);\r
201                         fixation.fill = Color.red;\r
202                         //var poly = new Rectangle(100, 100);\r
203                         var poly = new Letters("日本語");\r
204                         //var poly = new Polygon(); poly.append(0, 100); poly.append(-100, 0); poly.append(0, -100); poly.append(100, 0);\r
205                         //var poly = new Ellipse(100, 100);\r
206                         //var poly = new Line(0,0,100, 0);\r
207                         poly.fill = Color.red;\r
208                         poly.stroke = new Stroke { color = Color.yellow, thick = 1 };\r
209                         shape = poly;\r
210 \r
211                         var rng = new Interval();\r
212                         var slider = new Psychlops.Widgets.Slider("tesrt", 0 <= rng <= 5);\r
213 \r
214                         dots = new RandomDots();\r
215 \r
216 \r
217                         while(true) {\r
218                                 frames++;\r
219                                 \r
220                                 cnvs.clear(new Color(Mouse.left.pressed() ? 0.75 : 0.5));\r
221                                 col.set(Math.random(1.0));\r
222 \r
223                                 fixation.centering();\r
224                                 fixation.draw(Color.red);\r
225 \r
226                                 //Figures.drawGabor(ref img, 20, 100, 1, 0, frames * 2.0 * Math.PI / tfreq / 60);\r
227                                 //Figures.drawGaussian(ref img, 20, 1);\r
228                                 Figures.drawGrating(ref img, 30, 30, 20, 1, 2, frames * 2.0 * Math.PI / tfreq / 60);\r
229                                 img.centering(Mouse.position);\r
230                                 img.draw();\r
231 \r
232                                 shape.centering(Mouse.position).shift(100,0);\r
233                                 shape.draw();\r
234                                 if (Keyboard.spc.pressed()) cnvs.var(Mouse.x, 100, 100);\r
235 \r
236                                 cnvs.var(frames, 20, 20);\r
237                                 slider.value = frames/100.0;\r
238 \r
239                                 fixation.shift(100,100);\r
240                                 fixation.draw(new Stroke(Color.blue, 3));\r
241 \r
242                                 for (int i=0; i<dots.cood.Length; i++)\r
243                                 {\r
244                                         dots.cood[i].set(Math.random(500), Math.random(500));\r
245                                 }\r
246                                 dots.draw();\r
247 \r
248                                 cnvs.flip();\r
249                         }\r
250                 }\r
251         }\r
252 \r
253 }\r
254 */