# WCCC_Pressure

# PlanetaryPressureCycles

For this week's Creative Code challenge by **@sableRaph**: “ ***Pressure*** ”, **PlanetaryPressureCycles** takes ***LiveCodeLab, SonicPi & Hydra*** code to mimic the cycles of weather pressure. Where High Pressure tends to lead to clearer skies and less wind while lower pressure leads to cloudy/stormier outcomes. The possible cycles in this planetary system are showcased in this sketch.

## Poetry

```ocaml
Pressure roams both fast and slow
It externalizing its will
As it decides to fill
Energetic traits when it is low
Stormy intents tend to spill
Winds tends to follow
Clouds are no longer shallow
Planetary Cycle
Of Pressure shall follow
```

## Video

%[https://youtu.be/dnwcpx-yFuw] 

## Code

### LiveCodeLab

```javascript
if time % 6 > 3
	animationStyle motionBlur

if time % 30 > 20
	simpleGradient color(154 + time % 30 * 2,155 - sin(time)* 50,tan(time)/sin(time) - 0.2),pink,orange
if time % 30 < 10
	simpleGradient aqua,color((time % 30)*7 + 24,abs(sin(time) * 244)),blue
if time % 30 < 20 && time % 30 > 10
	simpleGradient color((time % 30)*7 + 24,abs(sin(time) * 244),(cos(time) * cos(time)) * 255), color(255 - (time % 45 * 5),200/time % 12 + 1,155),color(154 + time % 30 * 2,155 - sin(time)* 50,tan(time)/sin(time) - 0.2)



if time % 15 > 10
	ambientLight 100,20,200
	fill color((time % 30)*7 + 24,abs(sin(time) * 244))
	stroke yellow

if time % 15 < 5
	ambientLight 255,255,0
	fill orange
	stroke color((time % 30)*8 + 24,abs(sin(time) * 244))

if time % 15 < 10 && time  % 15 > 5
	ambientLight 200,125,90
	fill color(154 + time % 30 * 2,155 - sin(time)* 50,tan(time)/sin(time) - 0.2)
	stroke color(154 + time % 30 * 2,155 - sin(time)* 50,tan(time)/sin(time) - 0.2)


if time % 12 > 6
	rotate (time % 4 + 1)/9,(time % 4 + 1)/9,(time % 4 + 1)/9 
	move (time % 12 +1)/12
else
	move (time % 12 +1)/12,(time % 12 +1)/12,(time % 12 +1)/12
	rotate sin(time),cos(time),tan(time)

ball

resetMatrix // Reset here to keep the upper Portion and Lower Portion seperate

pushMatrix
rotate time, sin(time) * sin(time), Math.hypot((time % 6), sin(time))

pushMatrix // bookmark the position after the rotation
move (sin(time)*0.5) * (sin(time)*2), tan(time) /12
ball 0.75
move 0.5, 0, 0

pushMatrix
move ((sin(time)*0.5) * (sin(time)*2)), tan(time) /12 * -1
ball 0.25
popMatrix

popMatrix 
move -0.5, 0, 0
ball
resetMatrix // resets the position
rotate time, sin(time) * sin(time), Math.hypot((time % 6))
scale sin(time) * sin(time) / 2, time % 3 + 1, time % 3 + 1
ball

popMatrix
```

### Hydra

```javascript
//Stormy Time

s1.initScreen()

src(s1).blend(shape([4,8,12,16,10,5,2].smooth(),[0.5,1,2,1,0.25].smooth(),[3,1.5,0.25,2,3,4,5,4,3,2,1].smooth())).scale([0.25,0.5,0.75,1,2,1,0.25,0.3].smooth()).luma(0.5).invert().colorama(0.17).blend(noise(1,2.5,1).color(0.25,0.5,0.75)).repeat([2,3,4,5].smooth(),[1,3,5,4,2,0.5].smooth()).modulateRotate(src(o0).pixelate(500,7500).invert(1.7).colorama(0.25)).modulateScale(src(o0).scrollX([0.5,0.25,0.15,-0.25,-0.1].smooth())).
out(o0)

speed = 2.5
```

```javascript
s1.initScreen()

src(s1).diff(shape([4,8,12,16,10,5,2].smooth(),[0.5,1,2,1,0.25].smooth(),[3,1.5,0.25,2,3,4,5,4,3,2,1].smooth())).scale([0.25,0.5,0.75,1,2,1,0.25,0.3].smooth()).luma(0.5).invert().colorama(0.17).blend(noise(1,2.5,1).color(0.25,0.5,0.75)).repeat([2,3,4,5].smooth(),[1,3,5,4,2,0.5].smooth()).modulateRotate(src(s1).pixelate(500,7500).invert(1.7).colorama(0.25)).modulateScale(src(s1).scrollX([0.5,0.25,0.15,-0.25,-0.1].smooth())).
out(o0)

speed = 2.5
```

```javascript
s1.initScreen()

src(s1).diff(shape([4,8,12,16,10,5,2].smooth(),[0.5,1,2,1,0.25].smooth(),[3,1.5,0.25,2,3,4,5,4,3,2,1].smooth())).scale([0.25,0.5,0.75,1,2,1,0.25,0.3].smooth()).luma(0.5).invert().colorama(0.17).blend(noise(1,2.5,1).color(0.25,0.5,0.75)).repeat([2,3,4,5].smooth(),[1,3,5,4,2,0.5].smooth()).modulateRotate(src(s1).pixelate(500,7500).invert(1.7).colorama(0.25)).modulateScale(src(o0).scrollX([0.5,0.25,0.15,-0.25,-0.1].smooth())).
out(o0)

speed = 2.5
```

### Sonic Pi (Slowed Down)

```ruby
with_fx :distortion do
  with_fx :krush do
    live_loop :Riffing do
      use_synth :dsaw
      n1 = (ring :b1, :a2, :c3, :e4).tick
      play n1, release: 0.26, cutoff: 87, res: 3, wave: 1.2
      sleep 0.25
    end
  end
end

with_fx :ixi_techno do
  with_fx :reverb do
    live_loop :Riffing2 do
      use_synth :pretty_bell
      n2 = (ring :a1, :b2, :d3, :e4).reverse
      play n2, release: 0.76, cutoff: 117, res: 1.5, wave: 1.2
      sleep 0.120
    end
  end
end

with_fx :gverb do
  with_fx :flanger do
    live_loop :Riffing3 do
      use_synth :sine
      n3 = (ring :a1, :b2, :d3, :e4).shuffle
      play n3, release: 0.76, cutoff: 117, res: 0.8, wave: 1.2
      sleep 0.45
    end
  end
end


live_loop :Riffing4, sync: :Riffing do
  use_synth :pretty_bell
  n3 = (ring :a1, :b2, :d3, :e4).tick
  play n3 if spread(5,12).tick
  sleep 0.45
end

live_loop :Riffing5, sync: :Riffing2 do
  use_synth :piano
  n3 = (ring :a1, :b2, :d3, :e4).tick
  play n3 if spread(7,12).tick
  sleep 0.45
end
```
