Sabtu, 12 Januari 2019

Menerapkan Transformasi obyek 2D



1. Struktur data titik dan vector

Struktur data dari titik 2D> typedef struct {

float x,y;

} point2D_t;

Struktur data dari vektor 2D > typedef struct {

float v[3];

} vector2D_t;

2. Perubahan struktur data

Fungsi ini digunakan untuk memindahkan tipe data titik menjadi tipe data vektor.Hal ini sangat berguna untuk operasional matrik yang digunakan dalam melakukan transformasi dan pengolahan matrik pada grafika komputer.

Point 2 Vector :

vector2D_t point2vector(point2D_t pnt)
{
vector2D_t vec;
vec.v[1]=pnt.x;
vec.v[2]=pnt.y;
vec.v[3]=1.;
}


Point 2 Point :

Fungsi ini digunakan untuk memindahkan tipe data vektor menjadi tipe data titik. Hal ini sangat berguna untuk penyajian grafis setelah proses pengolahan matrik yang dikenakan pada obyek 2D. 

point2D_t vector2point(vector2D_t vec)
{
point2D_t pnt;
pnt.x=vec.v[1];
pnt.y=vec.v[2];
}


3. Translasi

Translasi adalah perpindahan obyek dari titik P ke titik P’ secara linier.

4. Scalling

Scaling m adalah perpindahan obyek dari titik P ke titik P’, dimana jarak titik P’ adalah m kali titik P

5. Rotasi

Rotasi adalah perpindahan obyek dari titik P ke titik P’, yang berupa pemindahan berputar sebesar sudut θ

6. Perkalian Matrix

Perkalian matrik dengan matrik menghasilkan matrik • Perkalian matrik dengan vektor menghasilkan vektor Perkalian matrik ini digunakan untuk operasional transformasi dari obyek 2D dan untuk komposisi (menggabungkan) tranformasi.
Perkalian matrik a dan matrik b menghasilkan matrik c yang dirumuskan dengan
dimana i dan j bernilai 0 s/d 2

7. Komposisi Transformasi

Komposisi transformasi adalah menggabungkan beberapa tranformasi, sehingga dapat menghasilkan bentuk transformasi yang lebih kompleks
Komposisi tranformasi dapat dilakukan dengan mengalikan matrik-matrik transformasi


EmoticonEmoticon