01.Java程式:愛心:
size(300, 300);
stroke(255, 0, 0);
translate(width/2,height/2);
for (int xx=-150; xx<150; xx++) {
for (int yy=-150; yy<150; yy++) {
float x =xx/100.0;
float y =-yy/100.0;
float d = x*x+y*y-1;
if (d*d*d -x*x*y*y*y<0) point(xx, yy);
}
}
02.Java程式:角度與弧度:
size(600, 600);
background(0);
for (int i=0; i<6; i++) {
for (int j=0; j<6; j++) {
int now=i*6+j;
ellipse(50+j*100,50+i*100,80,80);
arc(50+j*100,50+i*100,60,60,0,now,PIE);
arc(50+j*100,50+i*100,40,40,0,radians(now*10),PIE);
text(now,j*100,i*100+30);
}
}
03.Java程式:角度與弧度(2):
void setup() {
size(600, 600);
}
void draw() {
background(128);
line(200, 200, 400, 200);
line(200, 200, mouseX, mouseY);
float dx = mouseX-200, dy = mouseY-200;
float a = atan2(dy, dx);
arc(200, 200, 200, 200, 0, a, PIE);
textSize(30);
text("radians:"+a, 100, 100);
text("degrees:"+degrees(a), 100, 130);
}
04.Java程式:旋轉長方形:
void setup() {
size(600, 600);
}
void draw() {
background(204);
translate( mouseX, mouseY);
rotate(radians(frameCount*10));
rect(50,-5, 100, 10);
}
05.Java程式:公轉與自轉長方形:
void setup() {
size(600, 600);
}
void draw() {
background(204);
pushMatrix();
rotate(radians(frameCount*10));
translate( width/2, height/2);
rect(50, -5, 100, 10);
popMatrix();
pushMatrix();
translate( width/2-100, height/2);
rotate(radians(frameCount*10));
rect(50, -5, 100, 10);
popMatrix();
}
06.Java程式:多重旋轉長方形:
void setup() {
size(500, 500);
}
void draw() {
background(204);
for (int x=50; x<500; x+=100) {
for (int y=50; y<500; y+=100) {
pushMatrix();
translate( x, y);
rotate(radians(frameCount));
rect(-50, 5, 100, 10);
popMatrix();
}
}
}
沒有留言:
張貼留言