15h3 Polychrome
(meta linear-colour-space: 1)
;; imitating/inspired by Karl Gerstner's Polychrome of Pure Colors (1956-58)
;; Not using Karl Garstner's palette but I am retaining the horizontal and
;; vertical colour gradients on alternating squares
(define
steps 14
box-dim (/ canvas/width steps)
half-box-dim (/ box-dim 2)
remap (interp/build from: [0 steps] to: [0 1])
col-fn-1 (col/build-procedural a: [0.5 0.5 0.5]
b: [0.5 0.5 0.5]
c: [0.990 0.406 0.048] ~ (gen/scalar)
d: [0.015 0.723 0.116] ~ (gen/scalar)
alpha: 1)
col-fn-2 (col/build-procedural a: [0.5 0.5 0.5]
b: [0.5 0.5 0.5]
c: [0.664 0.776 0.153] ~ (gen/scalar)
d: [0.372 0.515 0.756] ~ (gen/scalar)
alpha: 1))
(loop (y from: 0 to: steps)
(loop (x from: 0 to: steps)
(define
checked (if (= (mod y 2) 1) (mod x 2) (- 1 (mod x 2)))
colour (if (= checked 0)
(col/value from: col-fn-1 t: (interp/value from: remap t: x))
(col/value from: col-fn-2 t: (interp/value from: remap t: y))))
(rect colour: colour
position: [(+ (* x box-dim) half-box-dim)
(+ (* y box-dim) half-box-dim)]
width: box-dim
height: box-dim)))