1643 Hyp
(meta linear-colour-space: 1)
(render)
(define
coords1 [[153.326 66.565] ~ (gen/stray-2d from: [153.326 66.565] by: [5 5])
[-143.219 370.216] ~ (gen/stray-2d from: [-143.219 370.216] by: [5 5])
[-254.094 -214.417] ~ (gen/stray-2d from: [-254.094 -214.417] by: [5 5])
[368.038 -58.687] ~ (gen/stray-2d from: [368.038 -58.687] by: [5 5])]
coords2 [[29.449 -88.566] ~ (gen/stray-2d from: [29.449 -88.566] by: [5 5])
[-181.104 317.846] ~ (gen/stray-2d from: [-181.104 317.846] by: [5 5])
[-457.779 46.556] ~ (gen/stray-2d from: [-457.779 46.556] by: [5 5])
[461.392 -414.827] ~ (gen/stray-2d from: [461.392 -414.827] by: [5 5])]
coords3 [[-445.078 -431.034] ~ (gen/stray-2d from: [-445.078 -431.034] by: [5 5])
[-287.184 -394.192] ~ (gen/stray-2d from: [-287.184 -394.192] by: [5 5])
[225.426 -71.645] ~ (gen/stray-2d from: [225.426 -71.645] by: [5 5])
[311.633 -352.704] ~ (gen/stray-2d from: [311.633 -352.704] by: [5 5])]
col-fn-1 (col/build-procedural a: [0.224 0.120 0.710] ~ (gen/stray-3d from: [0.224 0.120 0.710] by: [0.1 0.1 0.1])
b: [0.589 0.819 0.879] ~ (gen/stray-3d from: [0.589 0.819 0.879] by: [0.1 0.1 0.1])
c: [0.622 0.476 0.884] ~ (gen/stray-3d from: [0.622 0.476 0.884] by: [0.1 0.1 0.1])
d: [0.822 0.732 0.425] ~ (gen/stray-3d from: [0.822 0.732 0.425] by: [0.1 0.1 0.1])
alpha: 0.08)
col-fn-2 (col/build-procedural a: [0.992 0.035 0.678] ~ (gen/stray-3d from: [0.992 0.035 0.678] by: [0.1 0.1 0.1])
b: [0.136 0.560 0.367] ~ (gen/stray-3d from: [0.136 0.560 0.367] by: [0.1 0.1 0.1])
c: [0.701 0.609 0.479] ~ (gen/stray-3d from: [0.701 0.609 0.479] by: [0.1 0.1 0.1])
d: [0.515 0.340 0.555] ~ (gen/stray-3d from: [0.515 0.340 0.555] by: [0.1 0.1 0.1])
alpha: 0.08)
col-fn-3 (col/build-procedural a: [0.212 0.128 0.661] ~ (gen/stray-3d from: [0.212 0.128 0.661] by: [0.1 0.1 0.1])
b: [0.714 0.956 0.862] ~ (gen/stray-3d from: [0.714 0.956 0.862] by: [0.1 0.1 0.1])
c: [0.789 0.114 0.110] ~ (gen/stray-3d from: [0.789 0.114 0.110] by: [0.1 0.1 0.1])
d: [0.203 0.077 0.798] ~ (gen/stray-3d from: [0.203 0.077 0.798] by: [0.1 0.1 0.1])
alpha: 0.08))
(fn (draw)
(fence (t num: 200)
(poly coords: [(interp/bezier t: t coords: coords1)
(interp/bezier t: t coords: coords2)
(interp/bezier t: t coords: coords3)]
colours: [(col/value from: col-fn-1 t: t)
(col/value from: col-fn-2 t: t)
(col/value from: col-fn-3 t: t)])))
(fn (render)
(wash colour: (col/rgb r: 0.575 g: 0.317 b: 0.517 alpha: 0.481) ~ (gen/col))
(on-matrix-stack
(translate vector: [(/ canvas/width 1) (/ canvas/height 2)])
(scale scalar: 2)
(repeat/rotate-mirrored fn: (address-of draw)
copies: 4 ~ (gen/int min: 2 max: 6))))
(fn (wash vol: 200
line-width: 70
line-segments: 5
colour: (col/rgb r: 0.627 g: 0.627 b: 0.627 alpha: 0.4)
seed: 272)
(define
w/3 (/ canvas/width 3)
h/3 (/ canvas/height 3))
(loop (d from: -20 to: 1020 inc: 20)
(bezier tessellation: line-segments
line-width: line-width
coords: [[0 (wash-n x: 0 d: d seed: seed vol: vol)]
[w/3 (wash-n x: w/3 d: d seed: seed vol: vol)]
[(* w/3 2) (wash-n x: (* w/3 2) d: d seed: seed vol: vol)]
[canvas/width (wash-n x: canvas/width d: d seed: seed vol: vol)]]
colour: colour)
(bezier tessellation: line-segments
line-width: line-width
coords: [[(wash-n x: 0 d: d seed: seed vol: vol) 0]
[(wash-n x: h/3 d: d seed: seed vol: vol) h/3]
[(wash-n x: (* h/3 2) d: d seed: seed vol: vol) (* h/3 2)]
[(wash-n x: canvas/height d: d seed: seed vol: vol) canvas/height]]
colour: colour)))
(fn (wash-n x: 0 d: 0 seed: 0 vol: 1)
(+ d (* vol (prng/perlin x: x y: d z: seed))))