# WCCC_Tessellation

# NightDayGriddage

For this week's Creative Code challenge by @sableRaph: ***"Tessellation ",* NightDayGriddage** is coded in ***Hydra & SonicPi*** wIth tessellation Through two grids and a wave effect.  

## Poem

```ocaml
Grids are growing
Flows are flowing
Flaws but glitchy
Glitchy and stitchy
Floating and gliding
Getting the wave and time in
Prosaic is what they asking
But poetic energy is what i am blasting
```

## Video

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

## Code

### Hydra

```javascript
 
voronoi([3,4,5,4,3,7].smooth(),[1,2,3,2,1].fit(),[5,0.5,3,1,3,5,7,1,0.5,8,22].smooth()).luma([0.5,0.3,0.1,0.2,0.1].smooth()).color(()=> (time % 40 + 1)/50).modulateKaleid
(voronoi(1,1,1).scrollX([0.6,0.3,0.1].smooth()).scrollY([0.3,0.2,0.1,0.2,0.1].smooth()),0.5).repeat([0.5,1,2].smooth(),[0.5,1,0.75].smooth()
).out()
```

```javascript
shape(4,0,1).repeat(4,4).colorama(0.5).blend(shape(4,0,1).scale(1.5).repeat(3,3).colorama(0.3)).rotate(()=> (time % 10) * 0.15).
blend(shape(4,0,1).scale(1.55).repeat(15,15).colorama(0.5).rotate(()=> time / 30)).
modulateScale(voronoi([3,4,5,4,3,7].smooth(),[1,2,3,2,1].fit(),[5,0.5,3,1,3,5,7,1,0.5,8,22].smooth()).luma([0.5,0.3,0.1,0.2,0.1].smooth()).color(()=> (time % 40 + 1)/50).modulateRepeat
(voronoi(1,1,1).scrollX([0.6,0.3,0.1].smooth()).scrollY([0.3,0.2,0.1,0.2,0.1].smooth()),0.5).repeat([0.5,1,2].smooth(),[0.5,1,0.75].smooth()
)).out()
```

### SonicPi

```ruby

def ind(z)
  index = 0
  
  case index
  when 0
    y = 0
  when 1..100
    y = 0
  when 100..1600
    y = 10
  when 1600..10000
    y = 40
  when index > 10000
    y = 100
  else
    y = 0
  end
 
  # this will do a while loop to confirm the number that is a square root
  while index * index.to_f < z
    y = index * index
    index += 1
    use_random_seed Time.now.to_i * 1.5
    use_synth [:piano,:pretty_bell].choose
    play index * 5 / 2
    sleep [0.5,1,2].choose
  end
  
  return index
  
end


def my_sqrt(x)
  
  #this index will be the potential square root number
  under_sqr = ind(x)
  
  
  #if it is equal return the sqaure root, if not return it and - 1
  if (under_sqr * under_sqr == x)
    return under_sqr
    
  else
    return under_sqr - 1
    
  end
end

live_loop :does do
  use_random_seed Time.now.to_i * 2
  with_fx :ping_pong do
    my_sqrt(rrand(1000,10000))
  end
  
  sleep [0.5,1,2,4].choose
end

live_loop :does1 do
  use_random_seed Time.now.to_i
  with_fx :ixi_techno do
    my_sqrt(rrand(1000,10000))
  end
  
  sleep [0.5,1,2].choose
end

live_loop :does2 do
  use_random_seed Time.now.to_i * 4
  with_fx :ixi_techno do
    my_sqrt(rrand(1000,10000))
  end
  
  sleep [0.5,1,2].choose
end

```
