raining zoom

Processing 2007/02/24 15:52
import aiexport.*;
import processing.opengl.*;
AIExport ai;
  int a=0;
  float tmpX[] = new float[400];
  float tmpY[] = new float[400];
  float t[] = new float[400];
  float g[] = new float[400];
void setup(){
  size(720,360,OPENGL);
  background(255,255,255);
  framerate(24);
  for (int i=0; i<400; i++){
    tmpX[i]= (int)(random(720));
    tmpY[i]= (int)(random(360));
    t[i]=(int)(random(10))+1;
    g[i]=(int)(random(100));
  }
 
  ai = new AIExport (this,2);
  ai.setContinuousRecordingFrameRate(1);
  ai.turnTransparencyOn();
}
void draw(){
  background(0xffffffff);
  translate(0, 0, -50);
  Line();
}
float zoom=1.6;
void Line() {
   ai.run();
  background(255,255,255);
  //마우스 확대 부분
  if(mousePressed && zoom<1800) {
    zoom += (zoom+.1)/80;
  }
  else if(zoom>1.6) {
    zoom -= (zoom+.1)/80;
  }
  scale(zoom);
// 마우스 확대
  ///////////////그리는 부분 시작///////////////////
  if (a<1550){
  for (int i=0; i<400;i++){
    tmpY[i]=tmpY[i]+t[i];
    ai.ai_stroke(255,255,255,0);
    ai.ai_fill(100,g[i]+150,80,t[i]*10);
    ai.ai_rect(tmpX[i],tmpY[i],2,15);
    if(tmpY[i]>400){
      tmpY[i]=tmpY[i]-450;
    }
  }
  }
  a++;
   ///////////////그리는 부분 끝/////////////////////
}

int tmpNumber = 0;
void keyPressed() {
  if (key=='e') ai.exportOneFrame();
  if (key=='r') ai.toggleContinuousRecording();
  ai.setFileName("rain_"+"_"+hour()+"."+minute()+"."+second()+"."+tmpNumber+".ai");
  tmpNumber++;
}