Anda di halaman 1dari 11

ALGORITMA M8

QORYATUNNISA
15819108
1MA14

1. Lengkapi Fungsi translate () yang sesui untuk membuat pola seperti pada gambar.

size (200,200);
background(0);
stroke(255);
fill(255,100);
translate(50,50);
rect(0,0,100,100);
translate(50,-50);
rect(0,0,100,100);
translate(-50,150);
line(0,0,-50,50);

1. Lengkapilah sudut dibawah ini untuk membentuk output seperti pada gambar.

size (200,200);
background(175);
stroke(255);
fill(0);
beginShape();
vertex(20,20);
vertex(180,20);
vertex(18170);
vertex(100,90);
vertex(20,170);
endShape();

2. Buatlah bentuk dari piramida hanya menggunakan 3 sisi. Dan berikanlah warna yang berbeda-
beda pada masing-masing sisinya.

void setup(){
size(500,500,P3D);
smooth();
}

void draw(){
strokeWeight(2);
beginShape();
fill(#FFD900);
vertex(20,20);
vertex(250,100);
vertex(450,20);
endShape();

beginShape();
fill(#00FF1B);
vertex(20,20);
vertex(250,100);
vertex(250,400);
endShape();

beginShape();
fill(#FF0D00);
vertex(450,20);
vertex(250,100);
vertex(250,400);
endShape();
}

3. Buat kubus tiga dimensi menggunakan 6 quads dengan fungsi beginShape(QUADS). Warna
dari masing-masing sisi pada kubus sesuai dengan yang kalian inginkan.

void setup(){
size(200,200,P3D);
}

void draw(){
background(255);
translate(100,100,0);
drawCube(50);
}

void drawCube(int r){


stroke(0);
beginShape(QUADS);

fill(50,255,255,200);
vertex(-r,-r,-r);
vertex(r,-r,-r);
vertex(r,r,-r);
vertex(-r,r,-r);

fill(255,205,200,200);
vertex(-r,-r,-r);
vertex(r,-r,-r);
vertex(r,-r,r);
vertex(-r,-r,r);

fill(200,150,120,200);
vertex(-r,-r,-r);
vertex(-r,r,-r);
vertex(-r,r,r);
vertex(-r,-r,r);

fill(255,200,200,200);
vertex(-r,r,-r);
vertex(r,r,-r);
vertex(r,r,r);
vertex(-r,r,r);

fill(100,125,150,200);
vertex(r,-r,-r);
vertex(r,r,-r);
vertex(r,r,r);
vertex(r,-r,r);

fill(255,250,0,200);
vertex(-r,-r,r);
vertex(r,-r,r);
vertex(r,r,r);
vertex(-r,r,r);
endShape();
}

4. Buat sebuah garis yang dapat berputar pada titik pusatnya (seperti memutar tongkat).
Gambarlah lingkaran kecil seperti pada output di bawah.
(note: ubahlah ppt menjadi slide show agar dapat terlihat gifnya).

void setup(){
size(500,500,P3D);
}

float muter =0.0;


void draw(){
translate(width/2,height/2);
background(255);
stroke(0);

rotateZ(muter);
line(-45,-45,45,45);
line(0,0,45,45);
fill(175);
ellipse(50,50,17,17);
fill(175);
ellipse(-50,-50,17,17);
muter+=0.02;
}

5. Buatlah bentuk piramida agar bisa berotasi terhadap X dan berotasi terhadap Y seperti pada
gif di bawah.
(note: ubahlah ppt menjadi slide show agar dapat terlihat gifnya).

float muter =0.0;

void setup(){
size(700,700,P3D);
}

void draw(){
background(255);
translate(width/2,height/2);
rotateX(PI*mouseX/muter);
rotateY(PI*mouseY/muter);
drawPiramit(150);
muter+=0.02;
}

void drawPiramit(int r){


stroke(0);
strokeWeight(2);
beginShape(TRIANGLES);
fill(#00FF1B);
vertex(-r,-r,-r);
vertex(r,-r,-r);
vertex(0,0,r);

fill(#3F00FF);
vertex(r,-r,-r);
vertex(r,r,-r);
vertex(0,0,r);

fill(#00FFC1);
vertex(r,r,-r);
vertex(-r,r,-r);
vertex(0,0,r);

fill(#FFAF00);
vertex(-r,r,-r);
vertex(-r,-r,-r);
vertex(0,0,r);
endShape();
}

6. Buatlah bentuk piramida agar bisa berotasi terhadap mouseX dan berotasi terhadap mouseY
seperti pada gif di bawah.
(note: ubahlah ppt menjadi slide show agar dapat terlihat gifnya).
float muter =0.0;

void setup(){
size(700,700,P3D);
}

void draw(){
background(255);
translate(width/2,height/2);
rotateX(muter);
rotateY(muter);
drawPiramit(150);
muter =0.02;
}

void drawPiramit(int r){


stroke(0);
strokeWeight(2);
beginShape(TRIANGLES);
fill(#00FF1B);
vertex(-r,-r,-r);
vertex(r,-r,-r);
vertex(0,0,r);

fill(#3F00FF);
vertex(r,-r,-r);
vertex(r,r,-r);
vertex(0,0,r);

fill(#00FFC1);
vertex(r,r,-r);
vertex(-r,r,-r);
vertex(0,0,r);

fill(#FFAF00);
vertex(-r,r,-r);
vertex(-r,-r,-r);
vertex(0,0,r);
endShape();
}

7. Lengkapilah program dibawah ini agar dapat menghasilkan output seperti pada gif di bawah.
(note: ubahlah ppt menjadi slide show agar dapat terlihat gifnya).

float angle =0.0;


void setup() {
size(400, 400);
}
void draw() {
background(0);
translate(200,200);
rotate(angle);
stroke(255);
line(0,0,50,50);
fill(255);
rect(50,50,100,50);
angle+=0.02;
}

8. Lengkapilah program dibawah ini agar dapat menghasilkan output seperti pada gif di bawah.
(note: ubahlah ppt menjadi slide show agar dapat terlihat gifnya)
float angle=PI;
float block= 330;
float strip= 70;
float larva= 120;
float prt= 300;
void setup() {
size(400, 400);
rectMode(CENTER);
}

void draw() {
background(0);
push();
translate(block,strip);
rotate(angle);
//RECTANGLE 1
fill(255, 100, 50);
rect(50,0,50,100);
pop();

push();
translate(larva,prt);
rotate(-angle * 3);
//RECTANGLE 2
fill(50, 100, 255);
rect(50,50,50,100);
pop();

block = block + 0.5;


larva= larva - 0.5;
angle = angle + 0.03;
}
9. Buatlah 1 buah program dengan kreatifitas kalian untuk membuat bentuk apapun dalam 2D atau 3D,
buatlah menggunakan translate(), rotate(), vertex(), dan dapat bergerak atau digerakkan mengikuti
mouse.
(note: minimal harus ada translate(), rotate(), dan bisa bergerak atau digerakkan mengikuti mouse).

float muter =0.0;

void setup(){
size(500,500,P3D);
smooth();
}

void draw(){
translate(width/2,height/2);
muter +=0.02;
rotateX(PI*mouseX/muter);
rotateY(muter);
rotateZ(PI*mouseY/muter);

beginShape();
fill(#3F00FF);
vertex(20,20);
vertex(150,-150);
vertex(20,200);

beginShape();
fill(#00FFC1);
vertex(20,200);
vertex(-150,-150);
vertex(20,20);
endShape();
}

Anda mungkin juga menyukai