Dance Projection Lights.

Feb 21, 2011   //   by J.Boston   //   Interactive Programs, Portfolio, Processing Sketches  //  No Comments

here is an example i created of how processing could be used as dance projection lights. This could be a really interesting specific piece of software with a bit of development.

Processing Discourse Dance Projection Lights from Joseph Boston on Vimeo.

this is an example of the use of minim library with processing discourse. You can create interesting effects using the minim library. This particular example uses loops to create different sized shapes around the edge. Its only using the audio left and right inputs to create this but you can use FFT (part of the minim library) to make it more accurate to the sounds being produced by the music. Feel free to check out my other projects below also!

Below is the source code for this project:

import ddf.minim.*;
Minim minim;
AudioInput in;
int var1 = 200; 
PImage bg;

void setup()
{

  minim = new Minim(this);
  in = minim.getLineIn(Minim.STEREO, 512);
  bg = loadImage("face.jpg");
  size(500, 500);
  smooth();
  frameRate(25);
  this.rolling();
  
}

void draw(){
filter(BLUR, 3);
float a = 8;
translate(width*0.5, height*0.5);
stroke(255, 120);
strokeWeight(3);
for(int i = 0; i < 40; i++){
fill(in.left.get(i)*var1*3, 140, in.right.get(i)*30, 60);
rotate(PI/10);
rect(in.left.get(i)*70, in.left.get(i)*70, in.right.get(i)*70, in.right.get(i)*70);
fill(in.right.get(i)*var1/10, in.left.get(i)*var1, in.right.get(i)*-var1, 60);
ellipse(-200, in.left.get(i)*70, in.right.get(i)*var1, in.right.get(i)*70);
}
var1 += -10;
if(var1 < 20){
  var1 += 300;
}
}


void stop()
{
  // always close Minim audio classes when you are done with them
  in.close();
  minim.stop();
  
  super.stop();
}

void rolling(){
  int y = 0;
  int x = 0;
  if((y | x) == 0){
  
  for(y = 0; y < height; y ++){
      for(x = 0; x < width; x ++){
        point(x, y);
        stroke(30, 0, 0);
                                      }

                    
                                  }
                                  
            int i;
        for(i = 0; i < width; i++){  
        float r = random(10);
        strokeWeight(r);
        stroke(255, 255, 255, r-4);
        line(i, height, i, 0);
         }
           
        
             }
                                  
                  }

Leave a comment

You must be logged in to post a comment.

Get In touch!

contact@jaboston.com
Add me on LinkedIn
Check out my Illustrations

Long cat