Selasa, 17 April 2012


Tugas Grafika Komputer 
Membuat Translasi, Skala dan Rotasi dengan menggunakan Processing

Translasi

Membuat translasi persegi panjang dengan
Panjang  : 200
Lebar     : 100
Nilai Translasi Vektor (250,150)
tx : 250
ty: 150
dalam processing dituliskan dengan perintah translate (250,150)
Listing Translasi :
void setup()
{
  size(600,500);
  background (12);
  noStroke();
  // Menggambar posisi awal persegi panjang dengan warna abu-abu
  fill(220);
  rect(100,100,200,100);
/* perintah menggambar persegi panjang berwarna merah transparan dengan mengubah kordinay dengan cara menambahkan nilai kordinat awal dengan nilai translasi vektor*/
  fill(255,0,0,128);
  rect(100+250, 100+150,200,100);
/*menggambar persegi panjang berwarna biru transparan dengan menumpuk hasil penjumlahan kordinat   awal dengan translasi vektor hingga warna berubah menjadi ungu. */
  fill(0,0,128,225);
  pushMatrix();
  translate(250,150);
  rect(100,100,200,100);
  popMatrix();
}

hasil tampilan listing diatas :





 Untuk persegi panjang yang berwarna merah transparan tidak akan kelihatan karena ditumpuk oleh
persegi yang berwana biru. Untuk melihat persegi yang berwarna merah transparan bisa dengan mengubah nilai kordinat salah satu rect misalnya pada rect persegi panjang berwarna merah transparan : rect (50+250, 80+150, 200, 100) mk hasilnya akan kelihatan persegi panjang merah transparan seperti pada gambar dbawah :



Skala

Membuat skala persegi panjang dengan 
panjang  : 200
lebar      : 100
nilai skala faktor (3.5) dengan menggunakan perintah scale (3.5)
catatan :                 
pemisah antara 3 dengan 5 menggunakan  titik(.) bukan koma(,) 
Listing Skala :
void setup()
{
  size (900,600);
  background (255);
 // Membuat persegi warna abu-abu dengan posisi Orginal 
  stroke(128);
  fill(220);
  rect(50, 50, 200, 100);
  // Membuat persegi warna abu-abu dengan skala vector (3.5)
  stroke(1);
  pushMatrix();
  scale(3.5);
  fill(220);
  rect(50, 50, 200, 100);
  popMatrix();
}


hasil tampilan listing diatas : 



ukuran original rect(50, 50, 200, 100) kemudian diskalakan dengan skala faktor (3.5)




Rotasi
Membuat rotasi persegi panjang dengan 
panjang : 200
lebar : 100
nilai sudut rotasi 75 derajat dengan menggunakan perintah rotate(radians(75))

void setup()
{
  size (500,500);
  background(255);
  smooth();
  fill(192);
  noStroke();
  rect(200, 100, 200, 100);
  pushMatrix(); 
//memindahkan titik asal ketitik poros  
  translate(200, 100);
//rotasi pada poros 75 derajat  
  rotate(radians(75));
  //menggambar persegi dititik asal dengan perputara 75 derajat
  fill(0);
  rect(0, 0, 200, 100);
  popMatrix();
}

hasil tampilan listing diatas :






Tidak ada komentar:

Posting Komentar