Widgets

0

Transformasi Objek

Posted by Re on 21.46 in ,


Dalam pemodelan objek 2D, berbagai objek dimodifikasi dengan melakukan berbagai operasi fungsi atau operasi transformasi geometri. Transformasi ini dapat berupa transformasi dasar ataupun gabungan dari berbagai transformasi geometri. Transformasi ini dikenal dengan Transformasi affine. Pada dasarnya, transformasi merupakan suatu operasi modifikasi bentuk objek tanpa merusak bentuk dasar dari objek. Salah satu contoh transformasi adalah transformasi dari window ke viewport.
Pada Viewport, Objek yang akan digambar pada layar biasanya mempunyai ukuran yang jauh lebih besar dibanding dengan ukuran layar, sehingga perlu dilakukan pemetaan transformasi yang memungkinkan objek tersebut bisa seluruhnya digambar dilayar, tetapi pada layar dengan koordinat yang terbatas, dan biasanya dibatasi oleh sebuah kotak yang disebut windows, sedangkan layarnya tersebut disebut Viewport.
Tujuan Transformasi :
·      Merubah atau menyesuaikan komposisi pandangan.
·      Memudahkan membuat objek yang simetris
·      Melihat objek dari sudut pandang berbeda
·      Memindahkan satu atau beberapa objek dari satu tempat ke tempat lain, biasanya digunakan pada animasi computer.
Langkah-Langkah Transformasi Viewing 2 Dimensi :
Pembentukan scene pada WC menggunakan output primitif atribut. Untuk mendapatkan orientasi tertentu dari window, maka ditentukan sistem VC 2 dimensi pada WC. Frame digunakan untuk melengkapi penentuan orientasi dari windows persegi empat . Setelah frame dibentuk dapat ditransformasikan ke dalam WC untuk menampilkan koordinat. Kemudian viewport ditentukan dalam normalized NVC (pada batasan antara 0 dan 1) dan memetakan deskripsi VC dari scene pada Normalized Coordinate. Akhirnya dilakukan clipping (pemotongan) pada semua gambar yang ada diluar viewport.
Macam-macam transformasi :
-       Transformasi Objek, yang ditransformasikan titik-titik yang menyusun objek tersebut.
-       Transformasi Koordinat, yang diubah system koordinatnya sehingga objek mengalami transformasi dikarenakan perubahan system koordinat tersebut.
Transformasi dasar pada objek dua dimensi terdiri dari :
1.    FUNGSI TRANSLASI
Translasi merupakan bentuk transformasi yang memindahkan posisi suatu objek, baik pada sumbu x, sumbu y, atau sumbu z. Fungsi yang digunakan untuk melakukan translasi adalah :
glTranslatef Tx, Ty, Tz
 Parameter Tx digunakan untuk menentukan arah dan seberapa jauh suatu benda akan dipindahkan berdasarkan sumbu x. Parameter Ty digunakan untuk menentukan arah dan seberapa jauh suatu benda akan dipindahkan berdasarkan sumbu y. Sedangkan parameter Tz digunakan untuk menentukan arah dan seberapa jauh suatu benda akan dipindahkan berdasarkan sumbu z.
Contohnya :
glTranslatef 2, 2, 2
Koordinat baru titik yang ditranslasi dapat diperoleh dengan menggunakan rumus:
x ’ = x + trx
y ‘ = y + try
dimana (x,y) adalah koordinat asal suatu objek dan (x’,y’) adalah koordinat baru objek tersebut setelah ditranslasi. Translasi adalah transformasi dengan bentuk yang tetap memindahkan objek apa adanya. Dengan demikian setiap titik dari objek akan ditranslasi dengan besaran yang sama.
Fungsi dasar untuk Translasi (perubahan Posisi) objek
GLAPI void APIENTRY glTranslated( GLdouble x, GLdouble y, GLdouble z );

GLAPI void APIENTRY glTranslatef( GLfloat x, GLfloat y, GLfloat z );

2.    Rotasi
Rotasi merupakan bentuk transformasi yang digunakan untuk memutar posisisuatu benda. Fungsi yang digunakan untuk melakukan rotasi ialah :
glRotatef(θ, Rx, Ry, Rz)
Parameter yang dibutuhkan pada fungsi tersebut ada 4 macam, yaitu parameter θ untuk besar sudut putaran, parameter Rx untuk putaran berdasarkan sumbu x, parameter Ry untuk putaran berdasarkan sumbu y, dan parameter Rz untuk putaran berdasarkan sumbu z. Jika parameter θ bernilai postif, maka objek akan diputar berlawanan arah jarum jam. Sedangkan jika parameter θ bernilai negatif, maka objek akan diputar searah jarum jam. Contohnya :
glRotatef -30, 2, 2, 1
Fungsi dasar untuk Rotasi objek :

GLAPI void APIENTRY glRotated( GLdouble angle, GLdouble x, GLdouble y, GLdouble z );

GLAPI void APIENTRY glRotatef( GLfloat angle, GLfloat x, GLfloat y, GLfloat z );

3.    Fungsi Skala
Skalasi merupakan bentuk transformasi yang dapat mengubah ukuran (besar-kecil) suatu objek. Fungsi yang digunakan untuk melakukan skalasi ialah :
glScalef(Sx, Sy, Sz)
Perubahan ukuran suatu objek diperoleh dengan mengalikan semua titik atau atau vertex pada objek dengan faktor skala pada masing-masing sumbu (parameter Sx untuk sumbu x, Sy untuk sumbu y, dan Sz untuk sumbu z). Contohnya :
glScalef(2, 2, 2)
Fungsi dasar untuk skala (perubahan ukuran) objek

void APIENTRY glScaled( GLdouble x, GLdouble y, GLdouble z );

GLAPI void APIENTRY glScalef( GLfloat x, GLfloat y, GLfloat z );

·      Shearing
Shearing mempunyai beberapa pengertian, antara lain :
-       Shearing adalah bentuk transformasi yang membuat distorsi dari bentuk suatu objek, seperti menggeser sisi tertentu.
-       Shearing adalah suatu proses untuk mentransformasikan objek dengan cara “membebani” objek tersebut kea rah tertentu, sehingga dihasilkan suatu objek yang distorsi.
Dua macam shear yang umum adalah shear menurut sumbu x dan shear menurut sumbu y. 

·      SISTEM KOORDINAT HOMOGEN
Sistem koordinat homogen adalah system koordinat yang mempunyai satu dimensi lebih tinggi dari system koordinat yang ditinjau. Digunakan untuk menyatakan semua proses transformasi dengan perkalian matrix termasuk pergeseran.

0 Comments

Posting Komentar

Copyright © 2009 Informatic Engineering All rights reserved. Theme by Laptop Geek. | Bloggerized by FalconHive.