2018年1月14日 星期日

計圖筆記WEEK16

專題進度:
做出一大一小球會一分為二
float r1=200, r2=0;
float totalArea=r1*r1;
boolean touched=false;
int animT=0;
void setup(){
size(800,600);
}
void draw(){
background(255);
if(touched) fill(255,255,0);
else fill(255);
ellipse(300,300, r1,r1);
ellipse( 600,300, r2, r2);
if(touched && animT>0){
//same total area
float diff=(totalArea/3) / 60 * (60-animT);
r2=sqrt(diff);
r1=sqrt(totalArea-diff);
animT--;
}
}
void mousePressed(){
if( dist( mouseX, mouseY, 300,300 ) < r1/2 ){
touched=true;
animT=60;
}
}

沒有留言:

張貼留言