# Genuary2025_LayersCircles

# **LayeringLayers**

The prompt for **Genuary 2025 Day2 is Layers Upon Layers** and **Day 24 is Circles**

**LayeringLayers** takes a coded layered remake in **Hydra** of my first sketch of *Genuary2025* while making audio out of various Circles and their rolling speed coded in **SonicPi.** After this, more layers are made and repeated through various means.

## Poetry

```ruby
Lines Grouping
Lines Swooping
Layered upon each other with Circular entities
That are now the audio
entities that inject a bit of personality 
That may resemble at least
At least one station on the radio
But as long as the lines are please
Let's continue till the the Outro
```

## Video

%[https://youtu.be/2n8-HTcu2CU] 

## Code

### Hydra

```javascript
s0.initScreen()

src(s0).blend(src(s0).scale(0.5).colorama(0.5)).diff(src(s0).
blend(src(s0).kaleid(2))).modulateRotate(src(s0).scale(2)).repeat([0.5,1,2,1,2].smooth(),2).out()
```

### SonicPi

```ruby
#using 6 circle families to make the sound

=begin

using the various circle related equations to make two set of Circle Families and their members to
make sound
=end

def circles1(radius,loop,timer)
  
  circumference = 2 * Math::PI * radius
  area = Math::PI * (radius ** 2)
  
  
  live_loop loop do
    use_bpm [5 * timer, 12 * timer, 8 * timer].choose
    use_random_seed (Time.now.to_i)/timer #random seed
    with_fx :ping_pong,mix: 0.75 do
      with_fx :gverb, damp: 0.5 do
        use_synth [:piano, :chipbass].choose
        play circumference,amp: 2 #decay: rrand(1,4),
        sample [:tabla_ghe3,:perc_bell,:elec_beep].choose, beat_stretch: area / 80,amp: dice(10)
      end
    end
    sleep [0.25,0.5,1,2,4,8,16].choose
  end
  
  
end

def circles2(radius,loop,timer)
  
  circumference = 2 * Math::PI * radius
  area = Math::PI * (radius ** 2)
  
  live_loop loop do
    use_bpm [5 * timer, 12 * timer, 8 * timer].choose
    use_random_seed (Time.now.to_i)/timer #random seed
    with_fx :ixi_techno,mix: 0.75 do
      with_fx :vowel, voice: dice(3) + 1 do
        use_synth :chipbass
        play circumference #sustain: dice(3), amp: 2
        sample [:elec_blup,:tabla_ghe2,:drum_bass_hard].choose, rate: area / 100, attack: dice(5), amp: dice(10)
      end
    end
    sleep [0.25,0.5,1,2,4,8].choose
  end
  
end


circles1([1,3,5].tick,:circle1,3)
circles2(3,:circle2,4)
circles2([5,7,3].choose,:circle3,5)
circles1(9,:circle4,6)
circles2([10,12,14].tick,:circle5,7)
circles1([14,3,6].choose,:circle6,8)
```
