OSDN Git Service

32
[psychlops/silverlight.git] / test3 / PsychlopsMain.cs
index 829afbd..1991b9d 100644 (file)
@@ -2,34 +2,62 @@
 \r
 namespace PsychlopsSilverlight3test\r
 {\r
+\r
        public class PsychlopsMain\r
        {\r
                Canvas cnvs;\r
                Image img;\r
                Rectangle fixation;\r
+               Shape shape;\r
+               Color col;\r
                int isize = 100;\r
                double tfreq = 1;\r
+               int frames;\r
 \r
-               public void initialize()\r
+               public void psychlops_main()\r
                {\r
                        cnvs = new Canvas(500, 500);\r
                        img = new Image(isize * 2, isize * 2);\r
                        fixation = new Rectangle(10, 10);\r
-                       cnvs.clear(Color.gray);\r
-               }\r
+                       fixation.fill = Color.red;\r
+                       var poly = new Rectangle(100, 100);\r
+                       //var poly = new Letters("日本語");\r
+                       //var poly = new Polygon(); poly.append(0, 100); poly.append(-100, 0); poly.append(0, -100); poly.append(100, 0);\r
+                       //var poly = new Ellipse(100, 100);\r
+                       //var poly = new Line(0,0,100, 0);\r
+                       poly.fill = Color.red;\r
+                       poly.stroke = new Stroke { color = Color.yellow, thick = 1 };\r
+                       shape = poly;\r
 \r
-               public void each_frames()\r
-               {\r
-                       cnvs.clear(new Color(Mouse.left.pressed() ? 1.0 : 0.5));\r
-                       img.field(\r
-                               (x, y) => new Color(.5 + Math.gaussian(Math.radius(x - isize, y - isize), isize / 8.0) * .5 * Math.sin(cnvs.frame * 2 * Math.PI / tfreq / 60 + x / 3.0))\r
-                                       );\r
-                       img.centering(Mouse.position);\r
-                       //img.shift(1,0);\r
-                       img.draw();\r
-                       fixation.centering();\r
-                       fixation.draw(Color.red);\r
-                       cnvs.flip();\r
+\r
+                       while(true) {\r
+                               frames++;\r
+                               \r
+                               cnvs.clear(new Color(Mouse.left.pressed() ? 0.75 : 0.5));\r
+                               col.set(Math.random(1.0));\r
+\r
+                               fixation.centering();\r
+                               fixation.draw(Color.red);\r
+\r
+                               //Figures.drawGabor(ref img, 20, 100, 1, 0, frames * 2.0 * Math.PI / tfreq / 60);\r
+                               //Figures.drawGaussian(ref img, 20, 1);\r
+                               Figures.drawGrating(ref img, 100, 100, 20, 1, 2, frames * 2.0 * Math.PI / tfreq / 60);\r
+                               img.centering(Mouse.position);\r
+                               img.draw();\r
+\r
+                               shape.centering(Mouse.position).shift(100,0);\r
+                               shape.draw();\r
+                               if (Keyboard.spc.pressed()) cnvs.var(Mouse.x, 100, 100);\r
+\r
+                               cnvs.var(frames, 10, 20);\r
+\r
+                               fixation.shift(100,100);\r
+                               fixation.draw(new Stroke(Color.blue, 3));\r
+                               AppState.statusBar = "dhdyr";\r
+\r
+                               cnvs.flip();\r
+                       }\r
                }\r
        }\r
+\r
 }\r