TRANSFORMASI 3 DIMENSI
MODUL VI TRANSFORMASI 3 DIMENSI
Setelah membaca modul ini, mahasiswa akan memiliki pengetahuan dan mampu menjelaskan (i) apa yang dimaksud dengan transformasi 3 dimensi pada objek grafik (ii) proses transformasi dasar dan melakukan proses komputasi transformasi dasar (iii) Konsep sistem koordinat berganda dan transformasi majemuk secara global
VI.1 Pengertian Transformasi 3D
Dalam ruang dua dimensi suatu titik akan berada pada suatu posisi yang dinyatakan oleh dua sumbu. Umumnya kita sebut sumbu x dan sumbu y. Dalam ruang tiga dimensi terdapat sumbu ketiga yang biasanya kita sebut sumbu z. Terdapat dua konvensi dalam merepresentasikan suatu titik: kaidah tangan kanan dan kaidah tangan kiri. Dalam kaidah tangan kanan jika sumbu x positif mengarah ke kanan dan sumbu y positif mengarah ke atas maka sumbu z positif mengarah mendekati kita sementara dalam kaidah lengan kiri sumbu z positif mengarah menjauhi kita.
Gambar 6.1 Sumbu Koordinat 3 Dimensi
Transformasi-transformasi geometris yang dasar di ruang tiga dimensi sama halnya dengan di ruang dua dimensi kecuali
• rotasi kita perlu membedakan rotasi terhadap masing-masing sumbu • refleksi adalah terhadap bidang-bidang xy, yz, atau zx, dan • shear adalah terhadap dua sumbu, misalnya x dan z.
Demikian pula kita dapat memanfaatkan sistem koordinat homogen untuk suatu titik (x, y, z) dalam ruang tiga dimensi direpresentasikan sebagai matriks kolom [x y z h]. Selanjutnya setiap transformasi dasar dapat dinyatakan sebagai perkalian matriks:
VI.2 Operasi Dasar Transformasi 3D
Matriks transformasi umum 3D dinyatakan sebagai matriks 4x4 sebagai berikut:
Dimana a, b, c, d, e, f, g, h, i adalah elemen yang berpengaruh terhadap transformasi linier; p, q, r adalah elemen yang untuk proyeksi dan perspektif l, m, n adalah elemen untuk translasi pada sumbu x, y dan z s adalah elemen untuk overall scaling.
Translasi
Transformasi translasi 3 dimensi dinyatakan sebagai
Komposisi perkalian matriksnya adalah sebagai berikut: 1 0 0 0
][ = x y z 1 ]
Gambar 6.2 Translasi 3 Dimensi
Penskalaan
Dalam domain 3 dimensi, terdapat dua jenis penskalaan atau scaling yaitu local scaling dan overall scaling atau global scaling. Dalam local scaling penskalaan bisa dilakukan terhadap salah satu atau semua sumbu (x, y dan z). Sedangkan dalam overall scaling dilakukan secara seragam untuk semua sumbu.
Elemen matriks transformasi umum yang mempengaruhi local scaling adalah elemen diagonal yaitu elemen a, e dan i. Sedangkan elemen yang mempengaruhi overall scaling adalah elemen s. Formulasi transformasi untuk global scaling dan local scaling adalah sebagai berikut:
[ x ' y ' z ' 1 ][ = x y z 1 ] 0 0 1 0
x ' y ' z ' 1 ][ = x y z 1 ]
Operasi transformasi scaling pada elemen matriksnya adalah operasi perkalian sebagia berikut.
Gambar 6.3 Skala 3 Dimensi
Rotasi
Berbeda dengan transformasi rotasi 2D dimana yang menjadi sumbu adalah sebuah titik , dalam transformasi 3D, yang menjadi sumbu adalah garis atau sumbu. Formula untuk rotasi dapat dilihat pada tabel di bawah ini.
Gambar 6.4 Rotasi 3 Dimensi
Dalam rotasi 3D perlu diperhatikan bahwa urutan proses rotasi tidaklah komutatif. Gambar berikut mengilustrasikan keadaan ini. Digambarkan bahwa hasil akhir antara urutan proses rotasi pada sumbu x dilanjutkan rotasi sumbu z TIDAK SAMA HASILNYA dengan rotasi pada sumbu z dilanjutkan dengan rotasi pada sumbu x.
Gambar 6.5 Rotasi 3 Dimensi Tidak Komutatif
Rotasi pada Sumbu yang Paralel dengan Sumbu Utama
Langkah-langkah yang harus dilalui adalah (i) translasikan objek sedemikian rupa sehingga berimpit dengan salah satu sumbu utama (ii) lakukan rotasi (iii) lakukan re-translasi. Ilustrasinya ditunjukkan pada gambar di bawah ini.
Gambar 6.6 Rotasi Pada Sumbu Sembarang yang Sejajar Sumbu Utama
Rotasi pada Sumbu Sembarang
Proses ini cukup kompleks dan dilakukan sebanyak 5 langkah. Formulasi perkalian matriksnya adalah sebagai berikut:
[ T R ] ARB = [ T TR ] [ T R ] x [ T R ] y [ T R ] z [ T R ] y [ T R ] x [ T TR ]
Gambar 6.7 Rotasi 3 Dimensi Pada Sumbu Sembarang
Langkah-langkah yang dilakukan adalah
1. Translasikan (x1, y1, z1) ke origin
2. Rotasikan (x’2, y’2, z’2) pada sumbu Z
3. Rotasikan objek pada sumbu Z
4. Re-rotasi sumbu ke orientasi semula
5. Re-translasi
Langkah 1: Translasi
Langkah 2: Rotasi
Langkah 3: Rotasi
Langkah 4: Re-Rotasi
Langkah 5: Re-translasi
Contoh
Tentukan koordinat baru dari kuus yang dirotasikan 90º pada sebuah sumbu putar yang dibentuk oleh garis yang melalui A(2,1,0) dan B(3,3,1).
Penyelesaian: Langkah 1: Translasi ke origin
Langkah 2: Rotasi
Langkah 3: Rotasi Inti
Langkah 4 dan 5: Lakukan Re-rotasi dan Re-translasi 1 0 0 0 30 6
5 5 0 1 0 0 − 1 0 0 0 [ T R ] ARB =
Refleksi
VI.3 Sistem Koordinat Berganda
Latihan Penskalaan
Diketahui sebuah objek P dengan koordinat sebagai berikut : {(0,0,1,1), (2,0,1,1), (2,3,1,1), (0,3,1,1), (0,0,0,1), (2,0,0,1), (2,3,0,1), (0,3,0,1)}.
1. Gambarkan objek tersebut !
2. Lakukan local scaling terhadap objek P dengan faktor skala xyz={1/2, 1/3 dan 1}.
a. Tentukan koordinat baru
b. Gambarkan hasilnya
3. Lakukan overal scaling terhadap objek asli dengan faktor 2.
a. Tentukan koordinat baru
b. Gambarkan hasilnya
Latihan Rotasi
Diketahui sebuah objek Q dengan koordinat sebagai berikut : {(0,0,1,1), (3,0,1,1), (3,2,1,1), (0,2,1,1), (0,0,0,1), (3,0,0,1), (3,2,0,1), (0,2,0,1)}.
1. Gambarkan objek tersebut !
a. Lakukan rotasi terhadap Q sebesar θ = −90 ° pada x
b. Tentukan koordinat baru b. Tentukan koordinat baru
2. Lakukan rotasi terhadap objek Q sebesar ϕ = 90° pada sumbu y
a. Tentukan koordinat baru
b. Gambarkan hasilnya
Latihan Refleksi
Diketahui sebuah objek Q dengan koordinat sebagai berikut : {(1,0,-1,1), (2,0,-1,1), (2,1,- 1,1), (1,1,-1,1), (1,0,-2,1), (2,0,-2,1), (2,1,-2,1), (1,1,-2,1)}.
1. Gambarkan objek tersebut !
2. Lakukan refleksi pada bidang xy
a. Tentukan koordinat baru
b. Gambarkan hasilnya
Latihan Transformasi Gabungan
1. Tentukan Matriks Transformasi Umum untuk transformasi berurutan berikut ini:
1. Translasi sebesar -1, -1, -1 pada sumbu x, y, z
2. Rotasi sebesar +30° pada sumbu x
3. Rotasi sebesar + 45° pada sumbu y
2. Tentukan koordinat objek baru untuk vektor posisi homogen (3 2 1 1) yang ditransformasikan dengan MTU yang dihasilkan
Daftar Pustaka
1. David F. Rogers, Alan J. Adams , Mathematical Elements for Computer Graphics (2nd edition), McGraw-Hill, 1989
2. John F. Hughes, Andries Van Dam, Morgan Mcguire, David F. Sklar, James D. Foley, Steven K. Feiner, Kurt Akeley, Computer Graphics: Principles and Practice
(3 rd edition), Addison-Wesley, 2014
3. Ollie Cornes, Jay Glynn, Burton Harvey, Craig McQueen, Jerod Moemeka, Christian Nagel, Simon Robinson, Morgan Skinner, Karli Watson, Professional C# - Graphics with GDI+, Wrox, 2001