162e X

(meta linear-colour-space: 1)

(define
  coords1 [{[-93.474 30.789] (gen/stray-2d from: [-93.474 30.789] by: [50 50])}
           {[12.860 -115.420] (gen/stray-2d from: [12.860 -115.420] by: [50 50])}
           {[9.174 415.564] (gen/stray-2d from: [9.174 415.564] by: [50 50])}
           {[307.752 115.163] (gen/stray-2d from: [307.752 115.163] by: [50 50])}]

  coords2 [{[263.535 163.360] (gen/stray-2d from: [263.535 163.360] by: [50 50])}
           {[463.316 -483.654] (gen/stray-2d from: [463.316 -483.654] by: [50 50])}
           {[-126.369 163.186] (gen/stray-2d from: [-126.369 163.186] by: [50 50])}
           {[-110.559 144.470] (gen/stray-2d from: [-110.559 144.470] by: [50 50])}]

  coords3 [{[246.179 333.430] (gen/stray-2d from: [246.179 333.430] by: [50 50])}
           {[175.995 205.296] (gen/stray-2d from: [175.995 205.296] by: [50 50])}
           {[415.600 -409.797] (gen/stray-2d from: [415.600 -409.797] by: [50 50])}
           {[-284.530 207.528] (gen/stray-2d from: [-284.530 207.528] by: [50 50])}]

  col-1 (col/build-procedural a: {[0.500 0.688 0.908] (gen/stray-3d from: [0.500 0.688 0.908] by: [0.2 0.2 0.2])}
                              b: {[0.256 0.838 0.984] (gen/stray-3d from: [0.256 0.838 0.984] by: [0.2 0.2 0.2])}
                              c: {[0.104 0.601 0.336] (gen/stray-3d from: [0.104 0.601 0.336] by: [0.2 0.2 0.2])}
                              d: {[0.073 0.403 0.759] (gen/stray-3d from: [0.073 0.403 0.759] by: [0.2 0.2 0.2])}
                              alpha: 0.08)
  col-2 (col/build-procedural a: {[0.642 0.748 0.334] (gen/stray-3d from: [0.642 0.748 0.334] by: [0.2 0.2 0.2])}
                              b: {[0.928 0.543 0.441] (gen/stray-3d from: [0.928 0.543 0.441] by: [0.2 0.2 0.2])}
                              c: {[0.237 0.239 0.426] (gen/stray-3d from: [0.237 0.239 0.426] by: [0.2 0.2 0.2])}
                              d: {[0.739 0.418 0.843] (gen/stray-3d from: [0.739 0.418 0.843] by: [0.2 0.2 0.2])}
                              alpha: 0.08)
  col-3 (col/build-procedural a: {[0.174 0.541 0.742] (gen/stray-3d from: [0.174 0.541 0.742] by: [0.2 0.2 0.2])}
                              b: {[0.014 0.900 0.972] (gen/stray-3d from: [0.014 0.900 0.972] by: [0.2 0.2 0.2])}
                              c: {[0.650 0.115 0.842] (gen/stray-3d from: [0.650 0.115 0.842] by: [0.2 0.2 0.2])}
                              d: {[0.571 0.494 0.150] (gen/stray-3d from: [0.571 0.494 0.150] by: [0.2 0.2 0.2])}
                              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-1 t: t)
                          (col/value from: col-2 t: t)
                          (col/value from: col-3 t: t)])))

(fn (render)
    (on-matrix-stack
     (translate vector: [(/ canvas/width 2) (/ canvas/height 2)])
     (repeat/rotate-mirrored fn: (address-of draw)
                             copies: 2)))

(render)