162e Alien

(meta linear-colour-space: 1)

(define
  coords1 [[-380.559 -302.062] ~ (gen/stray-2d from: [-380.559 -302.062] by: [90 90])
           [-285.454 -474.428] ~ (gen/stray-2d from: [-285.454 -474.428] by: [90 90])
           [342.392 234.727] ~ (gen/stray-2d from: [342.392 234.727] by: [90 90])
           [110.418 -159.441] ~ (gen/stray-2d from: [110.418 -159.441] by: [90 90])]

  coords2 [[-93.395 -113.432] ~ (gen/stray-2d from: [-93.395 -113.432] by: [90 90])
           [363.150 -29.463] ~ (gen/stray-2d from: [363.150 -29.463] by: [90 90])
           [-164.617 308.666] ~ (gen/stray-2d from: [-164.617 308.666] by: [90 90])
           [16.711 61.422] ~ (gen/stray-2d from: [16.711 61.422] by: [90 90])]

  coords3 [[31.337 -75.713] ~ (gen/stray-2d from: [31.337 -75.713] by: [90 90])
           [-380.814 96.363] ~ (gen/stray-2d from: [-380.814 96.363] by: [90 90])
           [-77.547 -11.253] ~ (gen/stray-2d from: [-77.547 -11.253] by: [90 90])
           [-274.251 -349.727] ~ (gen/stray-2d from: [-274.251 -349.727] by: [90 90])]

  col-1 (col/build-procedural preset: robocop
                              alpha: 0.08)
  col-2 (col/build-procedural preset: chrome
                              alpha: 0.08)
  col-3 (col/build-procedural preset: transformers
                              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)