# MinaCoding2025_Circles

# CirclesInTransport

For ***MinaCoding2025*** Prompt 1: **Circles**, I decided to code a circleful sketch through **Tixyland** named **CirclesInTransport** that takes the tixyland code and layering it upon itself. While the audio is coded in **SonicPi,** which is composed using the **“Nine-Point Circle”** and then edited a bit more after.

## Poem

```ocaml
Circles Moving
Moving Circles
In their own journey
Through their own obstacles and hurdles
These circles are moving
Some are slow and some are in a Hurry
```

## Video

%[https://youtu.be/brZz4jLFs90] 

## Code

### Tixyland Code

```javascript
i * hypot(sin(t),cos(x))% y
```

### SonicPi Code

```ruby
live_loop :circling do
  
  a = dice(5).to_f
  b = (dice(10) + 10).to_f
  c = ((dice(10) - 12).to_f).abs
  
  puts a,b,c
  
  use_random_seed Time.now.to_i
  
  #points of the triangle
  Points = [[a,a],[b,c],[a,c] ]
  
  # the nine point Circle comes from this circle
  Midpoints = [[((b-a)/2).abs,((c-a)/2).abs],[((b-a)/2).abs,c],[a,((c-a)/2).abs]]
  
  puts Midpoints[0]
  puts Midpoints[1]
  puts Midpoints[2]
  
  
  #bpm
  use_bpm [90,30,10,125].choose
  
  #synth and sound section
  use_synth [:piano,:hollow,:pretty_bell,:piano].choose
  
  with_fx :ping_pong, mix: 0.7 do
    with_fx :ixi_techno do
      play a * 15, decay: Midpoints[0][0], sustain: Midpoints[0][1]
      sleep [0.25,0.5,1].choose
      sample :elec_bell, rate: Midpoints[1][0], beat_stretch: Midpoints[2][1] + 0.0001
    end
    
    with_fx :whammy do
      play b * 5, attack: Midpoints[1][0], decay: Midpoints[1][1]
      sleep [0.25,0.5,1].choose
      sample :drum_bass_soft, rate: Midpoints[0][0], beat_stretch: Midpoints[1][1]
      play c * 3,sustain: Midpoints[2][0], attack: Midpoints[2][1]
      sleep [0.25,0.5,1].choose
    end
    
  end
  
  
  
  sleep [0.5,1,2].choose
  
end
```
