# Genuary2023_Reflections

### **The prompt for Genuary 2023 Day 16 is**

## Reflection of a Reflection

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

For today's Prompt, We will be seeing how emojis reflections of each other as  
*"Reflecting feelings is determining the feelings and emotions in a person's verbal and body language and stating (or reflecting) those feelings back to the person or client." (*[https://study.com/learn/lesson/reflection-feelings-concept-examples.html](https://study.com/learn/lesson/reflection-feelings-concept-examples.html))*\-*

* The emojis will be reflecting off each other, through their various movement
    
    * Reflecting on both the placement of other emojis but also with how they are feeling themselves
        
    * Also, have two Emojional Reflection Sketches side by side to represent the waves of which reflections may come in
        
    * The music will also have various tempo changes to reflect the different reflection stages of the mind of each emoji
        
    * ***Sometimes they are colourful, sometimes they are gray  
        sometimes they are moving, sometimes they just stay  
        but the Emojional Reflections  
        are part of a digital introspection***
        
    * On the audio side, remixed a previous **SonicPi** composition that focused on recursion. Since recursion is defined as solving a problem internally, we can consider this as a reflection of a reflection till there is no more reflection to be done.
        
        * With **Seis8s** coded compositions layered as well
            

### **P5JS Code**

```javascript
/*

Reflecting feelings is determining the feelings and emotions in a person's verbal and body language and stating (or reflecting) those feelings back to the person or client.

*/

function setup() {
  background(100,90,200)
  createCanvas(800, 800);
  textSize(600)
  textAlign(CENTER)
  text('😡',width/2,height/2)
  text('😡',width/2,height/1.5)
  text('😡',width/2,height/1.25)
  textSize(400);
  textAlign(CENTER)
  text('🙃',width/2,height/2)
  textSize(200)
  text('😊',width/2,height/2)
}

function draw() {
 
  imageTweak()
  
  textSize(126);
  textAlign(CENTER)
  if (second() % 30 > 15)
    {
  text('😁', width/3 + sin(second() % 30 * 3), height/2 + random(-100,200));
  text('😁', abs(width -(width/3 + sin(second() % 30 * 3))), height/2 + random(-100,200));
  text('😒', width/2 + random(-100,200), height/2 - second() % 100 * 2);
  text('😭', width/4 - (second() % 45) * 5, height/1.5 - second() % 200 * 2);
    }
  else{
  text('😤', width/2 - second() % 30, height/2);
  text('😧', width/2, height/2 + second() % 100 * 2);
  text('😧', width/1.5, abs(height + (height/2 + second() % 100 * 2)));
  text('😭', width/4, height/1.5 - second() % 100 * 2);
  text('😭', width/3, height/4 - second() % 100 * 2);
  }
}



function imageTweak()
{
 filter(BLUR, random(2,8))
  
  if (second() % 40 > 17)
  {
    filter(GRAY)
  }
  
  if (second() % 30 > 15)
  {
   filter(DILATE); 
  }
  else
    {
    filter(ERODE);
    } 
}
```

### **SonicPi Code**

```ruby
#Previously made for a Recursion Challenge
#Aided with https://www.tutorialspoint.com/how-does-recursion-work-in-ruby-programming

def soundtrack(looping)
  live_loop looping do
    
    
    # recursion call being the function calling a new sub string
    def Addition(arr)
      return 1 if arr.length == 0
      arr[0] + Addition(arr[1..-1])
    end
    
    #variables that will be used in the Method Call below
    #Dice is a randomizer that functions as a dice roll
    a = dice(6)
    b = dice(6)
    c = dice(6)
    d = 2
    e = 3
    
    #Calling the Method to aid with sound design
    smacks = Addition([a,b,c,d,e])
    notes = Addition([a,b,d])
    
    #sound elements
    if notes % 2 == 0
      
      with_fx [:flanger,:vowel].choose, mix: rrand(0.3,0.5) do
        with_fx :echo do
          use_synth [:pretty_bell, :kalimba, :prophet].choose
          play notes * 4, attack: dice(6)
        end
      end
    else
      
      with_fx [:whammy,:gverb].choose, mix: rrand(0.2,0.6) do
        with_fx :gverb do
          use_synth [:chipbass, :kalimba, :prophet].choose
          play notes * 4, attack: dice(6)
        end
      end
    end
    
    if smacks > 10
      
      if notes > 8
        
        with_fx :vowel ,voice: dice(4) do
          sample :drum_bass_hard, decay: smacks / 12 if spread(smacks/4, smacks/3).look
        end
        
      else
        with_fx :ixi_techno, mix: 0.75 do
          sample :drum_bass_soft, decay: smacks / 12 if spread(smacks/4, smacks/3).look
        end
      end
      
    else
      
      if notes > 8
        
        with_fx :vowel do
          sample :tabla_ghe1, decay: smacks / 12 if spread(smacks/4, smacks/3).look
        end
        
      else
        with_fx :ixi_techno, mix: 0.75 do
          sample :tabla_ghe3, decay: smacks / 12 if spread(smacks/4, smacks/3).look
        end
      end
      
    end
    
    
    #print out numbers
    puts Addition([a,b,c,d,e])
    puts notes
    
    sleep [0.25,0.5,1,2].choose
  end
end

soundtrack(:addition)
soundtrack(:addition1)
soundtrack(:addition2)


```
