2017年10月16日 星期一

Week 05 J

作業一:

void setup(){
  size(400,400);

}

void draw(){-
  background(128);  //灰色
  strokeWeight(20);  //加粗
  ellipse(100,200, 180,360);
  ellipse(300,200, 180,360);

  ellipse(100,200, 10,10);
  ellipse(300,200, 10, 10);
  line(mouseX, mouseY, 100, 200);
  line(mouseX, mouseY, 300, 200);
}






void setup(){
  size(400,400);
 }

void draw(){
  background(128);
  strokeWeight(20);
  ellipse(100,200, 180,360);
  ellipse(300,200, 180,360);

  //ellipse(100,200, 10,10);
  //ellipse(300,200, 10, 10);
  //line(mouseX, mouseY, 100, 200);
  //line(mouseX, mouseY, 300, 200);

  float angle1 = atan2( (mouseY-200)/2  ,   mouseX-300);
  float newX1= 300  +  100*cos(angle1)/2;
  float newY1= 200  +  200*sin(angle1)/2;
  ellipse(newX1, newY1, 10, 10);
  float angle2 = atan2(  (mouseY-200)/2,   mouseX-100);
  float newX2= 100   +   100*cos(angle2)/2;
  float newY2= 200   +   200*sin(angle2)/2;
  ellipse(newX2, newY2, 10, 10);
}


作業二

void setup(){
  size(400, 800);
}

float ballX=200, ballY=600;
float ballVX=0, ballVY=0;
float angle=0;

void draw(){
   background(0,128,0);
   fill(#FA9703); ellipse(200,600,100, 100);
   line(mouseX, mouseY, 200, 600);
   fill(#F9FA03); ellipse(ballX, ballY, 30, 30);
   angle = atan2(mouseY-600, mouseX-200);
 
   ballX+=ballVX;
   ballY+=ballVY;
}

void mouseMoved(){
  ballX=200+50*cos(angle);
  ballY=600+50*sin(angle);
}

void mousePressed(){
  ballVX=cos(angle);
  ballVY=sin(angle);
}

射出10顆球,但是一定會當機!!!!!!!
void setup(){
  size(400, 800);
}

float [] ballX=new float[10];
float [] ballY=new float[10];
float [] ballVX=new float [10];
float [] ballVY=new float [10];
float [] angle=new float [10];
int now=0;

void draw(){
   background(0,128,0);
   fill(#FA9703); ellipse(200,600,100, 100);
   for(int i=0; i<10; i++){
     fill(#F9FA03); ellipse(ballX[i], ballY[i], 30, 30);
     ballX[i]+=ballVX[i];
     ballY[i]+=ballVY[i];
   }
   angle[now] = atan2(mouseY-600, mouseX-200);
 

}

void mouseMoved(){
  ballX[now]=200+50*cos(angle[now]);
  ballY[now]=600+50*sin(angle[now]);
}

void mousePressed(){
  ballVX[now]=cos(angle[now]);
  ballVY[now]=sin(angle[now]);
  now++;
}

沒有留言:

張貼留言