using Psychlops; namespace PsychlopsSilverlight4test { public class PsychlopsMain { public void psychlops_main() { var figure_type = Psychlops.Widgets.Browser.Element.byID("FIGURE"); var size_x = Psychlops.Widgets.Browser.Element.byID("SIZE_X"); var size_y = Psychlops.Widgets.Browser.Element.byID("SIZE_Y"); var shift_x = Psychlops.Widgets.Browser.Element.byID("SHIFT_X"); var shift_y = Psychlops.Widgets.Browser.Element.byID("SHIFT_Y"); var color_r = Psychlops.Widgets.Browser.Element.byID("COLOR_R"); var color_g = Psychlops.Widgets.Browser.Element.byID("COLOR_G"); var color_b = Psychlops.Widgets.Browser.Element.byID("COLOR_B"); Canvas window = new Canvas(300, 300); var figure_r = new Rectangle(); var figure_e = new Ellipse(); Shape figure = figure_r; while (!Keyboard.esc.pushed()) { if (System.String.Compare(figure_type, "Rectangle") == 0) { figure_r.set(size_x, size_y); figure = figure_r; } else { figure_e.set(size_x, size_y); figure = figure_e; } figure.fill = new Color(color_r, color_g, color_b); window.clear(Color.black); figure.centering().shift(shift_x, shift_y).draw(); window.flip(); } } } } /* using Psychlops; namespace Psychlops { public class RandomDots { Rectangle dot; public Point[] cood; public RandomDots() { cood = new Point[250]; dot = new Rectangle(5, 5); } public void draw() { dot.fill = Color.white; foreach (Point p in cood) { dot.centering(p).draw(); } } } } namespace PsychlopsSilverlight4test { public class PsychlopsMain { Canvas cnvs; Image img; Rectangle fixation; Shape shape; Color col; int isize = 100; double tfreq = 1; int frames; RandomDots dots; public void psychlops_main() { cnvs = new Canvas(500, 500); img = new Image(isize * 2, isize * 2); fixation = new Rectangle(10, 10); fixation.fill = Color.red; //var poly = new Rectangle(100, 100); var poly = new Letters("日本語"); //var poly = new Polygon(); poly.append(0, 100); poly.append(-100, 0); poly.append(0, -100); poly.append(100, 0); //var poly = new Ellipse(100, 100); //var poly = new Line(0,0,100, 0); poly.fill = Color.red; poly.stroke = new Stroke { color = Color.yellow, thick = 1 }; shape = poly; var rng = new Interval(); var slider = new Psychlops.Widgets.Slider("tesrt", 0 <= rng <= 5); dots = new RandomDots(); while(true) { frames++; cnvs.clear(new Color(Mouse.left.pressed() ? 0.75 : 0.5)); col.set(Math.random(1.0)); fixation.centering(); fixation.draw(Color.red); //Figures.drawGabor(ref img, 20, 100, 1, 0, frames * 2.0 * Math.PI / tfreq / 60); //Figures.drawGaussian(ref img, 20, 1); Figures.drawGrating(ref img, 30, 30, 20, 1, 2, frames * 2.0 * Math.PI / tfreq / 60); img.centering(Mouse.position); img.draw(); shape.centering(Mouse.position).shift(100,0); shape.draw(); if (Keyboard.spc.pressed()) cnvs.var(Mouse.x, 100, 100); cnvs.var(frames, 20, 20); slider.value = frames/100.0; fixation.shift(100,100); fixation.draw(new Stroke(Color.blue, 3)); for (int i=0; i