samer@1: (load "props.scm") samer@1: samer@1: (import "samer.core.types.*") samer@1: samer@8: (put "regulated" #t) samer@1: (push-properties "scope.props") samer@1: (put "canvas.background" Color.black$) samer@1: (put "canvas.foreground" (Color. 60 220 120)) samer@1: (put "trace.background" Color.black$) samer@1: samer@1: (define C (node "canvas" (Plotter.))) samer@1: (expose C "canvas") samer@1: (.exposeMaps C) samer@1: samer@1: (define (oscillator nm freq) samer@8: (define o (Oscillator. freq)) samer@8: (VParameter. nm (.getFrequencyModel o)) samer@8: o samer@1: ) samer@1: samer@1: (tasks) samer@8: (expose) samer@1: samer@1: (define x (VDouble. "x")) samer@1: (define y (VDouble. "y")) samer@1: samer@1: (addtasks samer@8: (GenerateDouble. x (oscillator "fx" 0.1)) samer@8: (GenerateDouble. y (oscillator "fy" 0.1)) samer@8: (let ((P (.getPen C))) samer@8: (.moveto P 0 0) samer@8: (task samer@8: (.activate P) samer@8: (.line (.abs P (.value$ x) (.value$ y))) samer@8: (.move P)))) samer@1: