Genuary2023_Tessellation

Genuary2023_Tessellation

Voronoi's Amok

The prompt for Genuary 2023 Day 12 is

Tessellation

A Voronoi diagram is also known as a Voronoi tessellation. But what if the Voronoi's wanted to run amok? In Today's Hydra sketch with SonicPi coded Audio, we are exploring this option.

Poem

Voronois appear
Vornoois disappearing
Voronois preparing
For how they will fare
For how they will show their flare
With the ounces of light that acts a glare
and their shadows, for with they share
some of their internal glows
external flows
To shine upon those
That happen to have their eyes close
Never wanted it to be open to see
Beyond the layers of corners and the sides
As there is an element of surprise
that is aided by their pride

Hydra Code

osc(5, -0.1, 5)
    .add(voronoi(5, 3, 1).scrollX([0.2,0.3,-0.1,-0.1]))
    .luma(() => (time % 10 + 1) / 14)
    .blend(noise(2.5, 1, 3))
    .kaleid([5, 4, 3, 5, 3, 7.626, 7, 5].fast(0.04))
    .scale(()=> (time % 17+1)/27, 1, 3)
    .colorama([0.1, 0.3, 0.5, 0.4, 0.239, 0.7].smooth())
.repeat(()=> (time % 5 + 2)/4,()=> (time % 7 + 1)/4)
    .out(o1);
src(o1)
    .mult(src(o0)
        .modulateRotate(o1, () => time % 100 + 1), -0.5)
    .out(o0);
speed = 0.090;
#slowed down by 68%

def rpitches (fx1,fx2,bpm,loop1,loop2,sound)

  with_fx fx1 do
    with_fx :vowel,voice: dice(3),mix: rrand(0.1,0.5) do
      use_bpm bpm
      live_loop  loop1 do
        sample sound, rpitch: (scale [0,1,2,3,4,5,4].reverse, :hex_aeolian).tick if spread(17,24).tick
        sleep [0.5,1,2].choose
      end
    end
  end


  with_fx fx2 do
    with_fx :pitch_shift, pitch: dice(4) do
      with_fx :reverb do
        use_bpm bpm
        live_loop loop2 do
          sample sound, rpitch: (scale [0,1,2,3,4].reverse, :hex_aeolian).tick if spread(17,24).tick
          sleep [1,2,4,8].choose
        end
      end
    end
  end

end

sample

rpitches(:ping_pong,:distortion, 5,:main1,:main2,:drum_bass_soft)
rpitches(:distortion,:ixi_techno,10,:next1,:next2,:guit_em9)
rpitches(:ixi_techno,:ping_poing,15,:third1,:third2,:elec_chime)
rpitches(:ping_pong ,:distortion,15,:fourth1,:fourth2,:perc_snap)
rpitches(:distortion,:ping_pong,15,:fifth1,:fifth2,:loop_perc2)