程式碼:
import java.awt.Frame;
PFrame f;
secondApplet s;
void setup() {
size(320, 240);
PFrame f = new PFrame();
}
void draw() {
background(255,0,0);
fill(255);
rect(10,10,frameCount%100,10);
s.background(0, 0, 255);
s.fill(100);
s.rect(10,20,frameCount%120,10);
s.redraw();
}
public class PFrame extends Frame {
public PFrame() {
setBounds(100,100,400,300);
s = new secondApplet();
add(s);
s.init();
show();
}
}
public class secondApplet extends PApplet {
public void setup() {
size(400, 300);
noLoop();
}
public void draw() {
}
}
程式碼:
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);
}
眼珠跟隨滑鼠坐標:
程式碼:
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);
}
畫n個矩形做成雙螺旋:
程式碼:
void setup(){
size(600,600);
}
void draw(){
background(255);
float t=frameCount/100.0;
for(float f=0;f<PI;f+=0.1){
rect(200+150*cos(f+t),f*100,30,30);
rect(200+150*cos(f+t+PI),f*100,30,30);
}
}
備註:因為這個程式只是在一個窗口中畫矩形,所以運行沒問題,如果是用生成n個視窗來排成雙螺旋,這樣的CPU開銷就很大了。
沒有留言:
張貼留言