* * * * * * * * * * * * *
* *
* matrix_square.pde *
* *
* * * * * * * * * * * * *
import krister.Ess.*;
AudioChannel myChannel;
SineWave myWave;
WhiteNoise myNoise;
cella[][] c = new cella[5][5];
int x1 = 10;
int y1 = 10;
int wr = 290;
int hr = 290;
int amp = 50;
int lun = 50;
void setup()
{
Ess.start(this);
myChannel=new AudioChannel();
myChannel.initChannel(myChannel.frames(300));
frameRate(60);
size(310, 310);
background(0);
noStroke();
fill(0);
for (int i = 0; i<=4; i++)
{
for (int j = 0;j<=4;j++)
{
c[i][j] = new cella();
c[i][j].drawing((x1*j)+(50*j)+x1,(y1*i)+(50*i)+y1,amp,lun,i,j);
c[i][j].colore(i+j+i*10+10*j+10,i,j);
}
}
for (int i = 0; i<=4; i++)
{
for (int j = 0;j<=4;j++)
{
c[i][j].redrawing((x1*j)+(50*j)+x1,(y1*i)+(50*i)+y1,amp,lun,i,j);
}
}
}
void draw()
{
float k = random(0,4);
float z = random(0,4);
int i = round(k);
int j = round(z);
int rnd = round(random(0,220));
int rand = round(random(0,220));
if ((i<=0) || (j<=0))
{
c[i][j].colore((1*rnd)+j+(1*rand)+5+10,i,j);
myWave=new SineWave(((1*rnd)+j+(1*rand)+5+10),.1);
myWave.volume=1;
myWave.generate(myChannel,0,myChannel.frames(390));
myNoise=new WhiteNoise(rand+10.1);
myNoise.volume=0.1;
myNoise.generate(myChannel,0,myChannel.frames(200));
}
else
{
c[i][j].colore(round(random((i*rnd)+j+(i*rand)+j+10)),i,j);
myWave=new SineWave(round(random(((rnd)+(i))))*5,.1);
myWave.volume=1;
myWave.generate(myChannel,0,myChannel.frames(350));
myNoise=new WhiteNoise(rnd+6.1);
myNoise.volume=0.1;
myNoise.generate(myChannel,0,myChannel.frames(200));
}
c[i][j].redrawingcolor((x1*j)+(50*j)+x1,(y1*i)+(50*i)+y1,amp,lun,i,j);
myChannel.play();
}
public void stop() {
Ess.stop();
super.stop();
}
------------------------------------------
* * * * * * * * * * * * *
* *
* cell.pde *
* *
* * * * * * * * * * * * *
class cella
{
int X,Y,W,H;
int[][] colori = new int[5][5];
cella()
{
rect (10,10,50,50);
}
void drawing(int x, int y, int w, int h,int i, int j)
{
fill(100);
rect (x,y,w,h);
}
void redrawing(int x, int y, int w, int h,int i, int j)
{
fill(colori[i][j]);
rect (x,y,w,h);
}
void redrawingcolor(int x, int y, int w, int h,int i, int j)
{
fill(colori[i][j],round(random(colori[i][j])-i),
round(random(colori[i][j]))+j);
rect (x,y,w,h);
}
void colore(int colore, int i, int j)
{
colori[i][j]=colore;
println("colore "+colore);
}
}