Está en la página 1de 3

// Uso de minim y graficos

import ddf.minim.*;

Minim minim;
AudioInput in;
AudioRecorder recorder;
float [][]Diametros;
float rotacionX, rotacionY, rotacionZ;
void setup()
{
Diametros= new float[2048][20];
size(1000, 700, P3D);
textMode(SCREEN);
minim = new Minim(this);
in = minim.getLineIn(Minim.STEREO, 2048);
44100 sps monofonica

textFont(createFont("Arial", 12));
for (int i=0; i<2048; i++)
{
Diametros[i][2]=random(-(width/2),width/2);
Diametros[i][3]=random(-(height/2),height/2);
Diametros[i][4]=random(-150,150);

Diametros[i][5]=random(255);

// entrada mic con buffer de 2048 muestras a

Diametros[i][6]=random(255);
Diametros[i][7]=random(255);

Diametros[i][8]=random(100,255);
Diametros[i][9]=random(2,50);
}
}

void draw()
{
background(0);
stroke(255);
noStroke();
directionalLight(255,255, 255, 0, 10, -10);
ambientLight(106,106,106);
translate(width/2,height/2,0);
rotateX(rotacionX); rotateY(rotacionY); rotateZ(rotacionZ);
for(int i = 0; i < in.bufferSize() - 1; i++)
{
Diametros[i][0]=10+in.left.get(i)*10;
Diametros[i][1]=10+in.right.get(i)*10;

}
for(int i=0; i<2048; i+=50)
{
pushMatrix();

translate(Diametros[i][2], Diametros[i][3], Diametros[i][4]);


fill(Diametros[i][5],Diametros[i][6],Diametros[i][7],Diametros[i][8]);
sphereDetail((int)Diametros[i][9]);
rotateX( rotacionX);
sphere(Diametros[i][0]);
// ellipse(Diametros[i][2], Diametros[i][3],Diametros[i][0],Diametros[i][1]);
popMatrix();
}

rotacionX+=PI/500;
rotacionY+=PI/2000;
rotacionZ+=PI/1000;
}

void keyReleased()
{
}

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

super.stop();
}

También podría gustarte