(frame) and (theme) are now interpreted on run()
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
; benchmark
|
||||
; this file is used to test the library.
|
||||
|
||||
; Basics
|
||||
|
||||
|
||||
@@ -1,26 +1,19 @@
|
||||
; gradients
|
||||
(clear)
|
||||
;
|
||||
(def frame-rect (frame))
|
||||
(def radius
|
||||
(frame-rect:m))
|
||||
;
|
||||
(def gradient-line
|
||||
(line frame-rect:c 0 frame-rect:c frame-rect:h))
|
||||
;
|
||||
(def gl
|
||||
(line 0 0 frame:h frame:h))
|
||||
(def cl1
|
||||
(gradient gl
|
||||
(theme:b_med theme:b_high)))
|
||||
(def cl2
|
||||
(gradient gl
|
||||
(theme:b_high theme:b_med)))
|
||||
(guide gl)
|
||||
(fill
|
||||
(circle frame-rect:c frame-rect:m radius)
|
||||
(gradient gradient-line
|
||||
("#72dec2" "white")))
|
||||
;
|
||||
(circle frame:m frame:m frame:m) cl1)
|
||||
(fill
|
||||
(circle frame-rect:c frame-rect:m
|
||||
(mul radius 0.75))
|
||||
(gradient gradient-line
|
||||
("white" "#72dec2")))
|
||||
;
|
||||
(circle frame:m frame:m
|
||||
(mul frame:m 0.75)) cl2)
|
||||
(fill
|
||||
(circle frame-rect:c frame-rect:m
|
||||
(mul radius 0.5))
|
||||
(gradient gradient-line
|
||||
("#72dec2" "white")))
|
||||
(circle frame:m frame:m
|
||||
(mul frame:m 0.5)) cl1)
|
||||
@@ -1,42 +1,42 @@
|
||||
; shapes
|
||||
; display a collection of all shapes.
|
||||
(clear)
|
||||
(stroke
|
||||
(rect 0 0 300 300) "red")
|
||||
(rect 0 0 300 300) theme:b_high)
|
||||
(stroke
|
||||
(circle 150 150 150) "white")
|
||||
(circle 150 150 150) theme:b_med)
|
||||
(stroke
|
||||
(ellipse 150 150 75 150) "red")
|
||||
(ellipse 150 150 75 150) theme:b_high)
|
||||
(stroke
|
||||
(line 0 150 300 150) "red")
|
||||
(line 0 150 300 150) theme:b_high)
|
||||
(stroke
|
||||
(text 600 300 60 "hell") "white")
|
||||
(text 600 300 60 "hell") theme:b_med)
|
||||
(stroke
|
||||
(arc 600 298 296
|
||||
(rad 180)
|
||||
(rad -90)) "white")
|
||||
(rad -90)) theme:b_med)
|
||||
(stroke
|
||||
(poly
|
||||
(pos 300 300)
|
||||
(pos 600 0)
|
||||
(pos 600 300)) "red")
|
||||
(pos 600 300)) theme:b_high)
|
||||
(transform:move 0 300)
|
||||
(fill
|
||||
(rect 0 0 300 300) "red")
|
||||
(rect 0 0 300 300) theme:b_high)
|
||||
(fill
|
||||
(circle 150 150 150) "white")
|
||||
(circle 150 150 150) theme:b_med)
|
||||
(fill
|
||||
(ellipse 150 150 75 150) "red")
|
||||
(ellipse 150 150 75 150) theme:b_high)
|
||||
(fill
|
||||
(line 0 150 300 150) "red")
|
||||
(line 0 150 300 150) theme:b_high)
|
||||
(fill
|
||||
(text 600 300 60 "hell") "white")
|
||||
(text 600 300 60 "hell") theme:b_med)
|
||||
(fill
|
||||
(arc 600 298 296
|
||||
(rad 180)
|
||||
(rad -90)) "white")
|
||||
(rad -90)) theme:b_med)
|
||||
(fill
|
||||
(poly
|
||||
(pos 300 300)
|
||||
(pos 600 0)
|
||||
(pos 600 300)) "red")
|
||||
(transform:reset)
|
||||
(pos 600 300)) theme:b_high)
|
||||
(transform:reset)
|
||||
38
examples/basics/spiral.lisp
Normal file
38
examples/basics/spiral.lisp
Normal file
@@ -0,0 +1,38 @@
|
||||
; animated recusive spiral
|
||||
; by @local_guru
|
||||
(defn rec
|
||||
(v)
|
||||
(if
|
||||
(gt v 0)
|
||||
(
|
||||
; params
|
||||
(def spiral-x
|
||||
(add frame:c
|
||||
(mul
|
||||
(cos
|
||||
(add
|
||||
(div v 17)
|
||||
(time 0.001)))
|
||||
(div v 2))))
|
||||
(def spiral-y
|
||||
(add frame:m
|
||||
(mul
|
||||
(sin
|
||||
(div v 11))
|
||||
(div v 2))))
|
||||
(def spiral-r
|
||||
(div v 2))
|
||||
; draw
|
||||
(stroke
|
||||
(circle spiral-x spiral-y spiral-r)
|
||||
(color 114 222 194 0.1) 1)
|
||||
(rec
|
||||
(sub v 0.3)))))
|
||||
;
|
||||
(defn redraw
|
||||
()
|
||||
(
|
||||
(clear)
|
||||
(rec 300)))
|
||||
;
|
||||
(on "animate" redraw)
|
||||
@@ -1,8 +1,6 @@
|
||||
; stars
|
||||
(clear)
|
||||
; times
|
||||
|
||||
(def frame-rect (frame))
|
||||
(defn times
|
||||
(v f)
|
||||
(
|
||||
@@ -53,8 +51,8 @@
|
||||
()
|
||||
(
|
||||
(draw-star
|
||||
(random 100 frame-rect:w)
|
||||
(random 100 frame-rect:h)
|
||||
(random 100 frame:w)
|
||||
(random 100 frame:h)
|
||||
(random 10 100)
|
||||
(floor
|
||||
(random 3 32))))))
|
||||
@@ -1,12 +1,9 @@
|
||||
; display color from the theme.
|
||||
; ex: theme:f_high
|
||||
(clear)
|
||||
(fill
|
||||
(frame) theme:background)
|
||||
(fill frame theme:background)
|
||||
(def color-box
|
||||
(div
|
||||
(:h
|
||||
(frame)) 10))
|
||||
(div frame:h 10))
|
||||
(defn print-value
|
||||
(item id)
|
||||
(
|
||||
@@ -18,12 +15,12 @@
|
||||
(circle color-box box-y
|
||||
(div color-box 2)) item)
|
||||
(fill
|
||||
(text 140 box-y 30 id) "white")
|
||||
(text 140 box-y 30 id) theme:f_high)
|
||||
(fill
|
||||
(text 200 box-y 30
|
||||
(of
|
||||
(keys theme) id)) "white")
|
||||
(keys theme) id)) theme:f_high)
|
||||
(fill
|
||||
(text 400 box-y 30 item) "white")))
|
||||
(text 400 box-y 30 item) theme:f_high)))
|
||||
(map
|
||||
(values theme) print-value)
|
||||
24
examples/basics/transform.branch.lisp
Normal file
24
examples/basics/transform.branch.lisp
Normal file
@@ -0,0 +1,24 @@
|
||||
(clear)
|
||||
(defn branch
|
||||
(v)
|
||||
(if
|
||||
(gt v 0)
|
||||
(
|
||||
(transform:scale 0.95)
|
||||
(stroke
|
||||
(line 0 0 100 100) theme:b_high 2)
|
||||
(transform:move 100 100)
|
||||
(transform:push)
|
||||
(transform:rotate
|
||||
(div v 50))
|
||||
(branch
|
||||
(sub v 1))
|
||||
(transform:pop)
|
||||
(transform:push)
|
||||
(transform:rotate
|
||||
(div v -50))
|
||||
(branch
|
||||
(sub v 1))
|
||||
(transform:pop))))
|
||||
(branch 10)
|
||||
(transform:reset)
|
||||
@@ -2,18 +2,18 @@
|
||||
(clear)
|
||||
(transform:move 150 150)
|
||||
(fill
|
||||
(circle 0 0 150) "#ffb545")
|
||||
(circle 0 0 150) theme:b_inv)
|
||||
(transform:move 300 0)
|
||||
(transform:rotate
|
||||
(rad 90))
|
||||
(fill
|
||||
(circle 0 0 150) "white")
|
||||
(circle 0 0 150) theme:b_high)
|
||||
(transform:move 300 0)
|
||||
(transform:rotate
|
||||
(rad 90))
|
||||
(fill
|
||||
(circle 0 0 150) "#72dec2")
|
||||
(circle 0 0 150) theme:b_med)
|
||||
(transform:move 300 0)
|
||||
(fill
|
||||
(circle 0 0 150) "#555")
|
||||
(circle 0 0 150) theme:b_low)
|
||||
(transform:reset)
|
||||
@@ -1,24 +0,0 @@
|
||||
(resetTransform)
|
||||
(clear)
|
||||
(defn branch
|
||||
(v)
|
||||
(if
|
||||
(gt v 0)
|
||||
(
|
||||
(scale 0.95)
|
||||
(stroke
|
||||
(line 0 0 100 100) "white" 2)
|
||||
(move 100 100)
|
||||
(pushTransform)
|
||||
(rotate
|
||||
(div v 50))
|
||||
(branch
|
||||
(sub v 1))
|
||||
(popTransform)
|
||||
(pushTransform)
|
||||
(rotate
|
||||
(div v -50))
|
||||
(branch
|
||||
(sub v 1))
|
||||
(popTransform)) ))
|
||||
(branch 10)
|
||||
@@ -1,33 +0,0 @@
|
||||
; dejong attractor
|
||||
|
||||
(clear)
|
||||
(defn point (x y color)
|
||||
(fill (rect x y 1 1) color))
|
||||
|
||||
(defn _dejong (x y a b c d)
|
||||
(rest ((point
|
||||
(add 300 (mul 100 x))
|
||||
(add 400 (mul 100 y))
|
||||
"red")
|
||||
(add (sin (mul a y)) (mul x (cos (mul b x))))
|
||||
(add (mul x (sin (mul x c))) (cos (mul d y)))
|
||||
))
|
||||
)
|
||||
|
||||
(defn dejong (r a b c d)
|
||||
(reduce
|
||||
(range 0 r)
|
||||
(λ (acc val)
|
||||
(first (
|
||||
(_dejong (first acc) (last acc) a b c d)
|
||||
)))
|
||||
(2 1)
|
||||
)
|
||||
)
|
||||
(benchmark
|
||||
'(dejong 12800
|
||||
(random -2 2)
|
||||
(random -2 2)
|
||||
(random -2 2)
|
||||
(random -2 2)
|
||||
))
|
||||
@@ -1,26 +0,0 @@
|
||||
;
|
||||
(resetTransform)
|
||||
(clear)
|
||||
;
|
||||
(def mouse-pos (pos))
|
||||
(def prev-pos (pos))
|
||||
;
|
||||
(defn when-mouse-move (e) (
|
||||
(set mouse-pos "x" e:x)
|
||||
(set mouse-pos "y" e:y)
|
||||
))
|
||||
;
|
||||
(defn when-animate () (
|
||||
(stroke (line prev-pos:x prev-pos:y mouse-pos:x mouse-pos:y) "#72dec2" 4)
|
||||
(move frame-rect:c frame-rect:m)
|
||||
(rotate 0.002)
|
||||
(scale 0.998)
|
||||
(translate frame-rect (pos (mul -1 frame-rect:w) (mul -1 frame-rect:h)))
|
||||
(resetTransform)
|
||||
(fill frame-rect "#00000004")
|
||||
(set prev-pos "x" mouse-pos:x)
|
||||
(set prev-pos "y" mouse-pos:y)
|
||||
))
|
||||
;
|
||||
(on "animate" when-animate)
|
||||
(on "mouse-move" when-mouse-move)
|
||||
@@ -1,19 +0,0 @@
|
||||
; animated recusive spiral
|
||||
; by @local_guru
|
||||
(def frame-rect (frame))
|
||||
(defn rec
|
||||
(v)
|
||||
(if (gt v 0)
|
||||
(
|
||||
; params
|
||||
(def spiral-x (add frame-rect:c (mul (cos (add (div v 17) (time 0.001))) (div v 2))))
|
||||
(def spiral-y (add frame-rect:m (mul (sin (div v 11)) (div v 2))))
|
||||
(def spiral-r (div v 2))
|
||||
; draw
|
||||
(stroke (circle spiral-x spiral-y spiral-r) "rgba(114,222,194,0.1)" 1) (rec (sub v 0.3)))))
|
||||
;
|
||||
(defn redraw () (
|
||||
(clear)
|
||||
(rec 300)))
|
||||
;
|
||||
(on "animate" redraw)
|
||||
@@ -2,13 +2,8 @@
|
||||
;
|
||||
(def seg-count 50)
|
||||
;
|
||||
(def frame-middle
|
||||
(div
|
||||
frame-rect:h 2))
|
||||
;
|
||||
(def seg-width
|
||||
(div
|
||||
frame-rect:w seg-count))
|
||||
(div frame:w seg-count))
|
||||
;
|
||||
(defn elevation
|
||||
(i)
|
||||
@@ -18,8 +13,7 @@
|
||||
(add
|
||||
(time 0.001)
|
||||
(div i 5)))
|
||||
(div
|
||||
frame-rect:h 5)) frame-middle))
|
||||
(div frame:h 5)) frame:m))
|
||||
;
|
||||
(defn draw-dash
|
||||
(i)
|
||||
@@ -34,10 +28,9 @@
|
||||
(elevation
|
||||
(sub i 1))
|
||||
(add x seg-width)
|
||||
(elevation i))
|
||||
(elevation i))
|
||||
(gradient
|
||||
(line 50 0
|
||||
frame-rect:w 0)
|
||||
(line 50 0 frame:w 0)
|
||||
("#ffb545" "#72dec2")) 4 )))
|
||||
;
|
||||
(defn redraw
|
||||
|
||||
@@ -1,8 +1,6 @@
|
||||
; send OSC msg to port:49162, at "/a"
|
||||
(def frame-rect
|
||||
(frame))
|
||||
(def disc
|
||||
(circle frame-rect:c frame-rect:m 200))
|
||||
(circle frame:c frame:m 200))
|
||||
;
|
||||
(defn on-animate
|
||||
()
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
(clear)
|
||||
;
|
||||
(def gradient-line
|
||||
(line frame-rect:c 0 frame-rect:c frame-rect:h))
|
||||
(line frame:c 0 frame:c frame:h))
|
||||
;
|
||||
(defn draw-circle
|
||||
(e)
|
||||
|
||||
Reference in New Issue
Block a user