view examples/graphics/scope/scope.scm @ 8:5e3cbbf173aa tip

Reorganise some more
author samer
date Fri, 05 Apr 2019 22:41:58 +0100
parents examples/misc/scope.scm@5df24c91468d
children
line wrap: on
line source
(load "props.scm")

(import "samer.core.types.*")

(put "regulated" #t)
(push-properties "scope.props")
(put "canvas.background" Color.black$)
(put "canvas.foreground" (Color. 60 220 120))
(put "trace.background" Color.black$)

(define C (node "canvas" (Plotter.)))
(expose C "canvas")
(.exposeMaps C)

(define (oscillator nm freq)
  (define o (Oscillator. freq))
  (VParameter. nm (.getFrequencyModel o))
  o
)

(tasks)
(expose)

(define x (VDouble. "x"))
(define y (VDouble. "y"))

(addtasks
  (GenerateDouble. x (oscillator "fx" 0.1))
  (GenerateDouble. y (oscillator "fy" 0.1))
  (let ((P (.getPen C)))
    (.moveto P 0 0)
    (task
      (.activate P)
      (.line (.abs P (.value$ x) (.value$ y)))
      (.move P))))