Minggu, 17 November 2013

TRANSFORMASI (KOMPUTER GRAFIK)





            Transformasi merupakan suatu metode untuk mengubah lokasi suatu titik pembentukobjek, sehingga objek tersebut mengalami perubahan. Perubahan objek dengan mengubahkoordinat dan ukuran suatu objek disebut dengan transformasi geometri.
Dalam Transformasi dasar yang akan dibahas meliputi translasi, skala, dan rotasi..
Transformasi diperlukan untuk mengubah ( transform ) posisi suatu objek dari tempat asal ke posisi elemen grafik, transformasi juga diperlukan untuk memutarkan posisi suatu objek pada titik pusat, mengubah ukuran objek dan menarik sebagian objek sehingga tampak terdistorsi.
Bentuk-bentuk transformasi tersebut secara umum adalah sebagai berikut :
         a.   Translation ( mengeser )
         b.   Scale ( merubah ukuran )
         c.   Rotation ( memutar )
         d.Refleksi
A.    Translation ( mengeser )
Translasi berarti memindahkan objek sepanjang garis lurus dari suatu lokasi koordinattertentu kelokasi yang lain tanpa mengubah bentuk objek. Bila suatu objek terbentuk daribeberapa titik maka bila melakukan translasi akan dikenakan terhadap setiap titikpembentuk objek tersebut.
Sebuah objek merupakan deretan titik-titik yang membangun objek tersebut, jika dilakukan proses translasi, maka akan mengoperasikan seluruh titik tersebut dan membutuhkan proses yang komplek dan lama. Untuk mengatasi masalah tersebut maka perlu ditentukan suatu titik tertentu dari suatu objek yang menjadi titik orientasi sehingga pergeseran dilakukan terhadap titik orientasi tersebut dan diikuti offset vektornya.
Untuk melakukan translasi dapat menggunakan rumus:
x’ = x + tx
y’ = y + ty

Contoh:  Diketahui titik-titik pembentuk objek segitiga yaiu A(10,10), B(30,10), C(10,30) dengan transformasi vector (10,20) lakukan trnslasi terhadap objek segitiga tersebut:
·         Titik A
x’A = xA + tx
y’A = yA + ty
= 10 + 10
= 10 + 20
= 20
= 30
A’(20,30)
·         Titik B
x’B = xB + tx
y’B = yB + ty
= 30 + 10
= 10 + 10
= 40
= 20
B’(40,20)
·         Titik C
x’C = xC + tx
  y’C = yC + ty
= 10 + 10
   = 30 + 20
= 20
   = 50
                        C‘(20,50)
B.     Strecthing ( merubah lebar )
Prinsip dasar strecthing sama seperti translasi hanya pada strecthing pergeseran hanya pada satu titik tertentu hingga objek bertambah besar atau bertambah kecil pada titik koordinat yang ditentukan.
C.    Scale ( merubah ukuran )
Scale dapat diartikan sebagai suatu perubahan terhadap objek tertentu sehingga ukuran objek tersebut berubah. Perubahan besar untuk lingkaran adalah pada radius r menjadi r’ dan perubahan besar pada segi empat pada P1, P2, P3 dan P4 menjadi  P1’, P2’, P3’ dan P4’.
Skala digunakan untuk mengubah ukuran suatu objek, bila pada translasi operasi yangdigunakan adalah penjumlahan sedangkan pada skala operasi yang digunakan adalah perkalian. Untuk melakukan skala dapat menggunakan rumus:
x’ = x * tx
y’ = y * ty
sx dan sy merupakan nilai dari scaling factor terhadap sumbu x dan sumbu y.
Contoh : Diketahui objek segitiga dengan titik A(10,10), B(30,10), C(10,30) di skala denganscaling factor (3,2).
·          Titik A
x’A = xA * tx
y’A = yA * ty
= 10 * 3
= 10 * 2
= 30
= 20
A’(30,20)

·         Titik B
x’B = xB * tx
y’B = yB * ty
= 30 * 3
= 10 * 2
= 90
= 20
B’(90,20)

·         Titik C
x’C = xC * tx
y’C = yC * ty
= 10 * 3
= 30 * 2
= 30
= 60
C’(30,60)

D.    Rotation ( memutar )
Rotation dapat diartikan sebagai aksi pemutaran objek sebesar sudut x dari posisi awalnya pada titik rotasi  ( x ).
Rotasi merupakan pemutaran terhadap suatu objek, rotasi dapat dinyatakan dalam bentukmatriks. Nilai matriks untuk melakukan rotasi adalah Rotasi suatu titik terhadap pivot point (xp, yp) menggunakan bentuk trigonometri, secaraumum dapat ditulis sebagi berikut:
Contoh:
Diketahui titik-titik pembentuk objek segitiga yaiu A(10,10), B(30,10), C(10,30) dengan sudut rotasi 300 terhadap titik pusat koordinat cartesian (10,10).
X’A = Xp + (XA – Xp)Cos 300 – (YA- YP)Sin 300
= 10 + (10 -10) * 0.9 – (10-10) * 0.5
= 10
·         Titik A


Y’A = YP + (XA – XP)Sin 300 + (YA – YP)Cos 300
= 10 + (10 – 10) * 0.5 + (10 – 10) * 0.9
= 10




A’(10,10)

·         Titik B
X’B = Xp + (XA – Xp)Cos 300 – (YA- YP)Sin 300
= 10 + (30 -10) * 0.9 – (10-10) * 0.5
= 28




Y’B = YP + (XA – XP)Sin 300 + (YA – YP)Cos 300
        = 10 + (30 – 10) * 0.5 + (10 – 10) * 0.9
        = 20





B’(28,20)
·         Titik C
X’C = Xp + (XA – Xp)Cos 300 – (YA- YP)Sin 300
= 10 + (10 -10) * 0.9 – (30-10) * 0.5
= 0




Y’C = YP + (XA – XP)Sin 300 + (YA – YP)Cos 300
= 10 + (10 – 10) * 0.5 + (30 – 10) * 0.9
= 28
C’(0,28).

Rotasi Terdiri dari 2 macam rotasi, yakni rotasi berlawanan arah jarum jam (counter-clockwise) dan rotasi searah jarum jam (clockwise).
Persamaan:
1. Berlawanan arah jarum jam (counter-clockwise)
2. Searah jarum jam (clockwise)
Dalam bentuk matrik ditulis sebagai berikut:
1. Berlawanan arah jarum jam (counter-clockwise)
2. Searah jarum jam (clockwise)
E.     Refleksi
 Refleksi adalah transformasi yang membuat mirror (pencerminan) dari image suatu objek. Image mirror untuk refleksi 2D dibuat relatif terhadap sumbu dari refleksi dengan memutar 180 derajat terhadap refleksi. Sumbu refleksi dapat dipilih pada bidang x,y.
Refleksi terhadap garis y=0, yaitu sumbu x dinyatakan dengan matriks berlawanan dengan posisi koordinat. Langkah :
– Objek diangkat
– Putar 180 derajat terhadap sumbu x dalam 3D
– Letakkan pada bidang x,y dengan posisi berlawanan
– Refleksi terhadap sumbu y membalikan koordinat dengan nilai y tetap.
Refleksi terhadap sumbu x dan y sekaligus dilakukan dengan refleksi pada sumbu x terlebih dahulu, hasilnya kemudia direfleksi terhadap sumbu y. Transformasi ini dinyatakan dengan :
• Refleksi ini sama dengan rotasi 180 derajat pada bidang xy dengan koordinat menggunakan titik pusat koordinat sebagai pivot point. Refleksi suatu objek terhadap garis y=x dinyatakan dengan bentuk matriks Refleksi terhadap garis y=-x dapat dilakukan dengan tahap :
– Rotasi 45 derajat searah jarum jam
– Refleksi terhadap axis y
– Rotasi 90 derajat berlawanan arah dengan jarum jam.



Bayangan Luka

Sejak senja itu menghilang aku kembali ketempat dimana nyamanku berada, mengurung kembali Hati yang penuh luka goresan, menghitung h...