My Time

Rabu, 11 April 2012

Tugas Grafika Komputer

GRAFIKA KOMPUTER
Membuat Translasi,Skala dan Rotasi dengan menggunakan Processing.

TRANSLASI
Membuat translasi persegi panjang dengan
Nilai Translasi Vektor (200,150)
tx : 200
ty : 150
dalam processing dituliskan dengan perintah translate (200,150)
Listing Translasi :
void setup()
{
size(600,500);
background (125);
noStroke();
// Menggambar posisi awal persegi panjang dengan warna putih dengan panjang = 100 dan lebar = 80
fill(230);
rect(80,80,100,80);
//perintah menggambar persegi panjang berwarna merah transparan dengan mengubah kordinat dengan cara menambahkan nilai kordinat awal dengan nilai translasi vector dengan panjang = 200 dan lebar = 150
fill(125,0,0,115);
rect(80+200, 80+150,200,150);
//menggambar persegi panjang berwarna biru transparan dengan menumpuk hasil penjumlahan kordinat awal dengan translasi vektor hingga warna berubah menjadi ungu.
fill(0,0,115,125);
pushMatrix();
translate(200,150);
rect(80,80,200,150);
popMatrix();
}

Hasil tampilan gambar dari listing di atas.
 


Untuk menampilkan warna merah yang tertumpuk oleh warna biru, kita dapat merubah pada bagian translate menjadi (80,40) dan rect menjadi(40+200, 40+150,200,150).
Hasilnya terlihat pada gambar berikut.



SKALA
Membuat skala persegi panjang dengan
panjang : 100
lebar : 80
nilai skala faktor (3.2) dengan menggunakan perintah scale (3.2)
catatan :
pemisah antara 3 dengan 2 menggunakan titik(.) bukan koma(,)
Listing Skala :
void setup()
{
size (600,500);
background (125);
// Membuat persegi warna putih dengan posisi original
stroke(100);
fill(230);
rect(40, 40, 100, 80);
// Membuat persegi warna hitam dengan skala vector (3.2)
stroke(1);
pushMatrix();
scale(3.2);
fill(12);
rect(40, 40, 100, 80);
popMatrix();
}

Hasil tampilan gambar dari listing di atas.





ROTASI
Membuat rotasi persegi panjang dengan
panjang : 200
lebar : 100
nilai sudut rotasi 45 derajat dengan menggunakan perintah rotate(radians(45))
Listing Skala :
void setup()
{
size (500,400);
background(125);
smooth();
fill(225);
noStroke();
rect(150, 100, 200, 100);
pushMatrix();
//memindahkan titik asal ketitik poros
translate(200, 100);
//rotasi pada poros 45 derajat
rotate(radians(45));
//menggambar persegi dititik asal dengan perputara 45 derajat
fill(0);
rect(0, 0, 200, 100);
popMatrix();
}
Hasil tampilan gambar dari listing di atas.

Twitter Delicious Facebook Digg Stumbleupon Favorites More

 
Top Web Hosting | manhattan lasik | websites for accountants