# MinaCoding2023_Human_Movements

# JuneMovements

The Fifth of the Seven Pieces for the **MinaCoding** Prompt of **Humans: JuneMovements**

## **Design Process**

**JuneMovements** uses the coding environments: ***Locomotion, SonicPi, and LiveCodelab*** to explore a subset of movements found in this week's realm.

* **Locomotion** is used to demonstrate the spatial capabilities of the movements that may be possible in this still-to-be-named universe
    
* **LiveCodeLab** displays a theory that in this universe, the planetary orbital paths may have affected the movements of the avatars in the **Locomotion** **Choreo**.
    
* The **SonicPi Composition** has a counter that changes the "***Physics of the Sound"*** to correspond with the Choreography and orbital as explained above
    

## Video

<iframe width="560" height="315" src="https://www.youtube.com/embed/piyaTsLlWfY"></iframe>

## Poem

```ocaml

Internal Movements
Movements seen on the exterior
Movements seeping below the door
Risen from the molecules
That were lifted from the door
Some mastering silence
Others ignoring the virtues of patiences
Movements that groove
Grooving to the rhythm of the hue
Internal moves
That become External Movements
```

## Code

### LivecodeLab

```javascript
turns = 2
detail = 400
speed = 0.4
background black


fill green

scale 0.4 - wave(0.05) * (sin(time % 10)/5)
rotate sin(time % 9),Math.sqrt(tan(time %12)),cos(time %9)

detail times with i
	rotate 0, 0, (2 * pi) / detail
	move 0.65,sin(time),cos(time) * wave (0.05)
		rotate (turns * i * pi) / detail + (time * speed), 0, 0
			rect 1

detail times with i
	fill green
	rotate 0, 0, (2 * pi) / detail
	move Math.cbrt(sin(time)),sin(time),cos(time) * wave (0.05)
		rotate (turns * i * pi) / detail + (time * speed), 0, 0
			peg 0.5,0.9,Math.hypot(sin(time % 9),cos(time % 7))

detail times with i
	scale 1
	fill green
	rotate sin(time), 0, (2 * pi) / detail
	move Math.cbrt(sin(time)),sin(time),cos(time) * wave (0.05)
		rotate (turns * i * pi) / detail + (time * speed), 0, 0
			box 0.5,0.9,Math.hypot(sin(time % 9),cos(time % 7))
```

### Locomotion

```haskell

directional { x= 10 , ly = 8, z = 5};
point { x = range 0 7 (osc 0.5),  y= 1 , z = range 7 - 7 (osc 0.3), color = 0x00888};

dancer{ url="raccoon.glb", dur = 3, z = range 12 -12 (osc 0.75), x = range 15 -5 (osc 0.5), ry= range 3.14 -10 (osc 0.75), ly = range 5 -5 (osc 0.5), size = 4 };
dancer{ url="raccoon.glb", x = range 5 -5 (osc 0.5), z = -2, ry=3.14, ly = range 5 -5 (osc 0.5), size= 3.5 };
dancer{ url="StoneFigure.glb", x = range 5 -5 (osc 0.5), z = -2, ry=3.14, ly = range 5 -5 (osc 0.5), size= 0.3 };

dancer{ url = "StoneFigure.glb", animation = 4, dur = range 2 -2 (osc 3), z = 0, x = -2, y = -3,rx = range 180 360 (osc 0.5),  x = osc 0.5,lx = range -15 15 (osc 0.5) };
```

### SonicPi

```ruby
n = 65

define :space do
  live_loop :melody do
    use_bpm 120 + [-Math.cbrt(n),+Math.sqrt(n)].choose
    use_synth (ring :pretty_bell, :piano,:piano).tick
    bellTime = ring( (scale [:f3,:d3,:b4].choose, :major,).reverse, (scale :f1, :minor).look).tick
    play bellTime if (spread 10,14).tick
    sleep [0.5,1,2,4].choose
    n+= 5
  end
end

define :space2 do
  live_loop :melody do
    use_bpm 120 + [-Math.cbrt(n),+Math.sqrt(n)].choose
    use_synth (ring :chiplead, :saw,:chipnoise).tick
    bellTime = ring( (scale [:f3,:d3,:b4].choose, :major,).reverse, (scale :f1, :minor).look).tick
    play bellTime if (spread 7,12).tick
    sleep [0.5,1,2,4].choose
    n+= 5
  end
end


live_loop :harmonic do
  
  live_loop :nofilters do
    with_fx :ping_pong do
      with_fx :echo do
        [space,space2].tick
      end
      sleep [0.1,0.2,0.25].choose
    end
  end
  
  with_fx :ping_pong ,mix: rrand(0.1,0.8) do
    live_loop :filter1, sync: :nofilters do
      with_fx [:reverb,:whammy].choose do
        [space,space2].choose
      end
      sleep [0.25,0.125,0.5].choose
    end
  end
  
  
  
  
  sleep [1,2,4].choose
end
```
