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 PsychlopsSilverlight3test { 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