SISTEM TRANSFORMASI LUKISAN OBJEK DUA DIMENSI DAN TIGA DIMENSI PADA GRAFIKA KOMPUTER DENGAN MENGGUNAKAN MATRIKS
TRANSFORMASI
Edy Victor Haryanto Sianturi
Dosen Teknik Informatika STMIK Potensi Utama
STMIK Potensi Utama, Jln. K.L Yos Sudarso Km. 6.5 No.3-A Tanjung Mulia Medan e-mail: [email protected]
ABSTRACT
Transformation is an object changes from one form to another, this paper described how two-dimensional objects be transformed into three-dimensional shapes using a matrix. The process is done in the transformation of the other objects in the input has to be rotated, because unlike 2D 3D rotation and the item is enlarged or reduced to fit the desired size, the object that has been modified scale should be translated, to move the point in the direction of x, y and z then in larger image objects by increasing the resolution by zooming in and zooming the results are dots to be connected to one another. The research was built using Visual Basic 2008
Keywords : Matrix Transformation, rotation, Zoom, Scale, Translation
ABSTRAK
Transformasi adalah sebuah perubahan objek dari suatu bentuk ke bentuk yang lain, pada makalah ini dijelaskan bagaimana objek 2 dimensi di transformasikan ke dalam bentuk 3 dimensi dengan menggunakan matriks. Proses yang dilakukan dalam transformasi antara lain objek yang telah di input harus dirotasi, karena rotasi 2D berbeda dengan 3D kemudian objek tersebut diperbesar atau diperkecil sesuai dengan ukuran yang diinginkan, objek yang sudah diubah skalanya harus ditranslasikan, untuk memindahkan titik dalam arah x, y dan z kemudian di perbesar objek gambar dengan menambah resolusi dengan cara di zoom dan hasil zoom tersebut terdapat titik-titik yang akan dihubungkan antara satu dengan yang lain. Penelitian ini dibangun dengan menggunakan Visual Basic 2008
Kata Kunci : Matriks Transformasi, Rotasi, Zoom, Skala, Translasi
PENDAHULUAN
Grafika komputer secara umum dianggap sebagai cabang ilmu komputer yang berkaitan dengan teori dan teknologi yang digunakan untuk menyintesa citra berkomputer. Citra dihasilkan komputer dengan cara melukiskan pemindaian mulai dari bersifat paling sederhana seperti renreng-an segitiga sampai yrenreng-ang mempunyai latarbelakrenreng-ang seragam drenreng-an rumit seindah burung merak di suatu taman, atau semulus rangkaian pulau-pulau Indonesia yang terdapat dalam peta. Sebagai ilmu, bidang grafika komputer memang dikaji dalam disiplin ilmu komputer, namun dalam pene-rapannya ternyata begitu banyak pihak yang terlibat seni lukis, musik, sinematografi, kriptografi dan lain-lain.
Ada suatu pepatah yang mengatakan bahwa “a picture worths thousands words”, sebuah gambar dapat bicara ribuan cerita. Meskipun tampak terlalu dilebihkan namun paling tidak dapat
disetujui makna yang tersirat dalam pepatah tersebut. Informasi yang disajikan secara naratif memang sangat umum dijumpai dan hal itu juga memiliki daya tarik tersendiri. Namun penyajian naratif memerlukan metode pemindaian berurutan, sedangkan dalam bentuk grafis pemindaian ini dapat dilakukan secara serentak. Pernyataan di atas merupakan salah satu manfaat dari visualisasi grafis, sedangkan manfaat dan aplikasi lainnya begitu banyaknya, dari visualisasi hingga perancangan, dari reproduksi gambar hingga animasi, dan sebagainya. Para pakar di bidang ini mengklaim bahwa grafika komputer, begitu diterjemahkan dari computer graphics, merupakan area yang paling menarik dalam bidang ilmu komputer.
Pada saat ini industri film dan game adalah yang betul-betul telah merasakan manfaat dari grafika komputer. Saat ini, film yang digemari bukan lagi film-film kartun, tetapi film animasi yang menggunakan teknologi 3D(tiga dimensi). Dengan grafik 3D(tiga dimensi), dapat dihasilkan suatu objek yang menyerupai bentuk aslinya. Hal yang sama terjadi pada industri game. Jika dulu game-game yang digemari masih dalam bentuk dua dimensi (2D), dengan teknologi yang ada sekarang dapat dihasilkan suatu game yang lebih realistis karena sudah dalam bentuk tiga dimensi.
Tujuan
Tujuan dari penelitian ini adalah :
1. Untuk mempermudah user dalam merancang atau membuat suatu objek lukisan baik dua dimensi maupun tiga dimensi.
2. Untuk menghasilkan suatu objek lukisan yang jauh lebih bagus dan lebih menarik.
3. Dapat mempermudah visualisasi dan penyampaian makna gambar dibandingkan dengan visualisasi secara dua dimensi (2D) dari pada objek tiga dimensi.
Tinjauan Pustaka
Penelitan yang dilakukan Rahma adalah pendekatan menghasilkan citra 3 dimensi secara otomatis adalah pendekatan pasif yang menggunakan citra 2 dimensi hasil proyeksi ortografik dari sebuah objek geometris 3 dimensi dan pembentukan citra 3 dimensi sebuah objek geometris yang komplek tidak perlu dilakukan dari awal dengan cara memanipulasi objek-objek primitive yang ada melainkan dapat dicapai dengan memberikan hasil proyeksi ortografik objek geometris yang diinginkan pada kertas gambar untuk dipindai dan dikonstruksi oleh komputer.
Proyeksi ortografik merupakan kategori dari proyeksi parallel yang memproyeksikan objek berdasarkan bidang proyeksi yang tegak lurus sehingga hasil dari proyeksi merupakan salah satu bidang dua dimensi dengan ukuran yang tetap dan sama hasilnya. Proyeksi ortografik yang umum dilakukan adalah proyeksi front elevation, top elevation (disebut juga plan elevation) dan side elevation. Proyeksi-proyeksi ini memiliki bidang proyeksi yang tegak lurus terhadap sumbu-sumbu utama system kordinat tiga dimensi tiga dimensi. Proyeksi side elevation memiliki bidang proyeksi yang tegak lurus terhadap sumbu x, Proyeksi top elevation memiliki bidang proyeksi yang tegak lurus terhadap sumbu y, Proyeksi front elevation memiliki bidang proyeksi yang tegak lurus terhadap sumbu z.
1. Rotasi / Putar
Rotasi merupakan suatu transformasi memindahkan nilai dari posisi awal menuju ke posisi akhir yang ditentukan melalui nilai variabel. Proses rotasi dapat dilakukan sebagai berikut:
X2 = cos(Ө) x (x1 – x0) - sin(Ө) x (y1 – y0) + x0…… (1) Y2 = sin(Ө) x (x1 – x0) + cos(Ө) x (y1 – y0) + y0…… (2)
Dimana (x0, y0) adalah kordinat titik pusat dari sumbu putar, sumbu putar umumnya memiliki arah putar searah jarum jam dengan garis horizontal.
2. Skala
Skala adalah sebuah operasi geometri yang memberikan efek memperbesar atau memperkecil ukuran. Proses penskalaan dapat dilakukan dengan rumus sebagai berikut :
Po = Sp X Pi………. (3) Lo = Sl X Li……….. (4)
penskalaannya akan memperbesar ukuran gambar, sebaliknya apabila variable penskalaannya lebih kecil dari 1 maka hasilnya akan memperkecil ukuran gambar.
3. Translasi
Translasi adalah memindahkan titik/ objek dalam arah x, y, dan z, ini berarti nilainya ditambah atau dikurangi dengan nilai tertentu. Secara umum operasi translasi melakukan perubahan dengan cara menambahkan koordinat awal dengan nilai variable translasi, sebagai berikut:
X2 = X1 + p ……….. (5) Y2 = Y1 + p ……….. (6)
Grafik Transformasi Dua Dimensi
Ada dua cara untuk melakukan transformasi, transformasi objek dan transformasi koordinat. Pada transformasi objek,semua titik di sembarang objek akan di ubah sesuai aturan tertentu, sedangkan system koordinatnya tetap. Objek pada transformasi sistem koordinat tetap. Namun karena system koordinatnya yang diubah, maka kedudukan objek harus disesuaikan dengan kedudukan system koordinat yang baru.
Transformasi pada dasarnya adalah mengubah posisi setiap titik, misalnya Py dari sembarang objek ke posisi yang lain. Sebagai contoh adalah Q yang menggunakan persamaan atau algoritma. Hal itu berarti terdapat suatu fungsi T yang memetakan koordinat P menjadi koordinat Q dan bisa Dituliskan Sebagai berikut :
T (Px, Py) = (Qx, Qy) Atau bisa juga ditulis : Q = T (P)
Dengan P = (Px, Py) dan Q = (Qx, Qy).
Dalam transformasi 2D, Fungsi transformasi T akan memetakan P = (Px, Py) menjadi Q = (Qx, Qy). Qx dan Qy berhubungan dengan Px dan Py berdasarkan persamaan berikut :
Qx = aPy + cPy + TRx Qy = bPx + dPy + Try
Adanya a, b, c, d menjadikan trx dan try sebagai sembarang konstanta.
ANALISIS dan PERANCANGAN
Bagaimana menghasilkan gambar dua dimensi dan tiga dimensi dan merotasi objek dua dimensi dan tiga dimensi sebesar sudut dari posisi awalnya pada titik rotasi ( ).
Gambar 1. Ilustrasi Rotation Pada Dua Dimensi
Keterangan :
adalah sudut posisi awal.
adalah sudut rotasi. r adalah titik rotasi.Rotasi suatu objek dengan P ( x, y ) dengan sudut
mendapatkan hasil titik P’ (x’, y’ ), dengan persamaan.
r
P1 P2 P3 P4 P1' P2' P3' P4'
y x r
sin
cos
'
x
y
x
y
'
y
cos
x
sin
Rotasi pada objek 3D mengikuti sumbu kordinat pada ketiga sumbu sistem koordinat x,y dan z. Secara umum rotasi di bagi menjadi dua yaitu rotasi yang berlawanan dengan arah jarum jam dan yang searah dengan jarum jam. Biasanya diberikan nilai positif dan negatif.
Selajutnya untuk rotasi yang searah jarum jam diberikan nilai negatif dan yang berlawanan arah jarum jam diberikan nilai positif untuk setiap sumbu koordinat x, y dan z.
Rotasi tersebut menggunakan sudut rotasi tertentu dari posisi P (x, y, z) menjadi P (x’, y’, z’).
a. Rotasi Pada Sumbu X
yz x
Gambar 2. IlustrasiRotasi Pada Sumbu X Pada Tiga Dimensi
Gambar 2 merupakan ilustrasi rotasi pada sumbu x dengan sudut rotasi
( ), pada rotasi ini pada sumbu x tidak terjadi perubahan titik koordinat, yang berubah adalah titik koordinat pada sumbu y dan z.Persamaan rotasi pada sumbu x adalah sebagai berikut :
x x' ) sin( ) cos( ' y
z
y ) cos( ) sin( 'y
z
zDari persamaan tersebut lebih jelas bahwa sumbu x tidak terjadi perubahan titik koordinat.
b. Rotasi Pada Sumbu Y
y
z x
Gambar 3. IlustrasiRotasi Pada Sumbu Y Pada Tiga Dimensi
Gambar 3 merupakan ilustrasi rotasi pada sumbu y dengan sudut rotasi
( ), pada rotasi ini pada sumbu y tidak terjadi perubahan titik koordinat, yang berubah adalah titik koordinat pada sumbu x dan z.Persamaan rotasi pada sumbu x adalah sebagai berikut :
)
sin(
)
cos(
'
x
z
x
y y' ) cos( ) sin( 'x
z
z 0 0 360 0 0 0 360 0 Dari persamaan tersebut lebih jelas bahwa sumbu y tidak terjadi perubahan titik koordinat.
c. Rotasi Pada Sumbu Z
y
z x
Gambar 4. IlustrasiRotasi Pada Sumbu Z Pada Tiga Dimensi
Gambar 4 merupakan ilustrasi rotasi pada sumbu z dengan sudut rotasi
( ), pada rotasi ini pada sumbu z tidak terjadi perubahan titik koordinat, yang berubah adalah titik koordinat pada sumbu x dan y.Persamaan rotasi pada sumbu x adalah sebagai berikut : ) sin( ) cos( 'x
y
x ) cos( ) sin( 'x
y
y z z'Dari persamaan tersebut lebih jelas bahwa sumbu z tidak terjadi perubahan titik koordinat.
METODE ANALISIS
Ketika membahas masalah transformasi matriks, maka hal utama yang ingin diketahui tentunya adalah bayangan suatu vektor dari transformasi tersebut dan matriks transformasinya. Penentuan matriks transformasi tergantung dari faktor – faktor yang diketahui.
Matriks adalah susunan sekelompok bilangan dalam bentuk segi empat siku-siku yang diatur menurut baris dan kolom. Istilah-istilah yang sering digunakan matriks adalah :
1. Baris matriks yaitu susunan bilangan-bilangan yang letaknya mendatar (horizontal) dalam matriks tersebut.
2. Kolom matriks yaitu susunan bilangan-bilangan yang letaknya tegak (vertikal) dalam matriks tersebut.
3. Elemen matriks yaitu bilangan-bilangan yang menyusun matriks tersebut dan letaknya didalam tanda kurung.
4
3
2
1
A
(7)Yang menjadi data masukan (input) dalam aplikasi ini adalah dengan object 2 dimensi bentuk gambar. Dimana gambar tersebut akan digunakan sebagai bahan untuk transformasi dari 2 dimensi ke 3 dimensi. Selanjutnya dilakukan proses transformasi objek ke 3 dimensi, dengan memasukkan parameter-parameter pendukung transformasi matriks. Adapun langkah-langkah untuk proses transformasi dari 2 dimensi ke 3 dimensi adalah sebagai berikut :
1. input gambar 2. rotasi 3. skala 4. translasi 5. zoom 6. draw style 0 0 360 0
4. Flowchart
Gambar 5. Flowchart Perancangan Aplikasi Tranformasi
Berikut penjelasan dari setiap proses perancangan :
1. Rotasi/ Putar
Berbeda dengan rotasi di 2D yang menggunakan titik pusat (0,0) sebagai pusat perputaran, rotasi 3D menggunakan sumbu koordinat sebagai pusat perputaran. Rotasi merupakan suatu transformasi memindahkan nilai dari posisi awal menuju ke posisi akhir yang ditentukan melalui nilai variabel. Proses rotasi dapat dilakukan sebagai berikut :
X2 = cos(Ө) x (x1 – x0) - sin(Ө) x (y1 – y0) + x0…… Y2 = sin(Ө) x (x1 – x0) + cos(Ө) x (y1 – y0) + y0……
Dimana (x0, y0) adalah kordinat titik pusat dari sumbu putar, sumbu putar umunya memiliki arah putar searah jarum jam dengan garis horizontal.
2. Skala
Skala adalah sebuah operasi geometri yang memberikan efek memperbesar atau memperkecil ukuran.
Proses penskalaan dapat dilakukan dengan rumus sebagai berikut : Po = Sp X Pi
Lo = Sl X Li
Dimna (Pi, Li) adalah ukuran input, (Po, Lo) adalah ukuran output, dan (Sp, Sl) adalah variable penskalaan yang diinginkan. Jika penskalaan bernilai lebih besar dari 1 maka hasil penskalaannya akan memperbesar ukuran gambar, sebaliknya apabila variabel penskalaannya lebih kecil dari 1 maka hasilnya akan memperkecil ukuran gambar.
Start Input Image Rotasi Skala Zoom Translasi Draw style End
3. Translasi
Translasi adalah memindahkan titik/ objek dalam arah x, y, dan z, ini berarti nilainya ditamabah atau dikurangi dengan nilai tertentu. Secara umum operasi translasi melakukan perubahan dengan cara menambahkan koordinat awal dengan nilai variable translasi, sebagai berikut :
X2 = X1 + p ……….. Y2 = Y1 + p ………..
4. Zoom
Zoom merupakan proses perbesar object gambar dengan cara menambah resolusi gambar dan interpolasi. Interpolasi sebenarnya adalah suatu proses untuk menentukan harga suatu fungsi pada titik-titik posisi antara suatu sampel dengan sampel tetangganya. Hal ini dilakukan dengan menyusun fungsi kontinu melalui sampel-sampel masukan diskrit. Dengan demikian harga fungsi dapat diperoleh untuk setiap sembarang titik, tidak hanya harga fungsi pada titik sampel.
5. Draw style
Dalam transformasi object 2 dimensi ke 3 dimensi terdapat 3 jenis draw style yang digunakan untuk menghubungkan setiap titik martiks antara lain :
a. Dots b. Lines c. Spike
Pada form ini terdapat tombol import gambar, tombol untuk export hasil transformasi gambar, parameter transformasi, dan jenis draw style. Berikut rancangan form utama.
Impor Gambar
Gambar
Transformasi
Export Hasil Transformasi
Draw Style Parameter Transofrmasi
HASIL dan UJICOBA Algoritma
Algoritma perancangan perangkat lunak Aplikasi transformasi objek 2 dimensi ke 3 dimensi dengan menggunakan matriks dibagi menjadi 5 bagian yaitu :
1. Algoritma Rotasi/ Putar 2. Algoritma Skala 3. Algoritma Translasi 4. Algoritma Zoom 5. Algoritma Draw style
Form Transformasi
Form transformasi digunakan untuk melakukan proses transformasi 2D ke 3D, pada form terdapat operasi untuk import gambar, ekspor gambar, dan parameter-parameter yang akan digunakan pada proses transformasi. Berikut Tampilan Form Transformasi.
Gambar 7. Form Transformasi
KESIMPULAN
Dari penelitian ini dapat disimpulkan beberapa hal mengenai kesimpulan dari Penelitian transformasi dari 2 dimensi ke 3 dimensi, yaitu :
1. Untuk mempermudah user dalam merancang atau membuat suatu objek lukisan baik dua dimensi maupun tiga dimensi.
2. Dalam penelitian ini dapat mempermudah visualisasi dan penyampaian makna gambar dibandingkan dengan visualisasi secara dua dimensi (2D) dari pada objek tiga dimensi.
DAFTAR RUJUKAN
Broughton, S.A. 2001, Transform Method in Imaging Processing- Lecture 2. Rose- Hulman Institute of Technology
Deniau, Laurent. 2003. “Image Processing”. Slide Presentasi.
Darma Putra. 2009, Pengolahan Citra Digital, Penerbit Andi, Yogyakarta
Debnath Lokenath,2002, Wavelet Transform and Their Application. Boston Birkhauser. Edward angel. 2009, Interactive Computer Graphics, Pearson Internasional Inc Janner Simarmata & Tintin Chandra. 2007, Grafika Komputer.
jurtek.akprind.ac.id/sites/default/files/98_103_rahma.pdf