2016年3月24日 星期四

week05_Java多視窗與眼珠移動和雙螺旋範例練習_呂登祐

試著跑出多個視窗

首先我們先估狗這方面的Processing

參考網址: https://forum.processing.org/one/topic/multiple-windows-2-4-2011.html

再加一行 import java.awt.Frame;

因為網址的程式碼是2.0版本,加上 import java.awt.Frame;是3.0版本,這樣程式就成執行結果出來。

畫出小眼睛,眼珠還會轉動

void setup(){
  size(120,100);
}
void draw(){
  float t = frameCount/180.0*PI;
  background(0);
  fill(255);
  ellipse(40, 50, 33, 33);
  ellipse(120-40, 50, 33, 33);
  fill(0);
  ellipse(40+15*cos(t), 50+15*sin(t), 5, 5);
  ellipse(120-40+15*cos(t), 50+15*sin(t), 5, 5);  
}

讓2顆眼珠跟著滑鼠飄動

void setup(){
  size(120,100);
}
void draw(){
  background(0);
  fill(255);
  ellipse(40, 50, 33, 33);
  ellipse(120-40, 50, 33, 33);
  fill(0);
  float t = atan2(mouseY-50, mouseX-45);
  ellipse(40+15*cos(t), 50+15*sin(t), 5, 5);
  t = atan2(mouseY-50, mouseX-(120-40));
  ellipse(120-40+15*cos(t), 50+15*sin(t), 5, 5);  
}

作出雙螺旋效果:

void setup(){
  size(720, 720);
}
void draw(){
 background(255);
 float t =frameCount/50.0;
 for(float f=0; f<PI; f+=0.1){
   rect(200+150*cos(f+t), f*60, 40, 40);
   rect(200+150*cos(f+t+PI), f*60, 40, 40);
 }
}


沒有留言:

張貼留言