Transformasi 3D pada dasarnya hampir sama dengan transformasi 2D, hanya pada 3D kita menghitung sumbu Z. Sama seperti pada 2D, ada tiga transformasi dasar yang dapat dilakukan terhadap verteks, yaitu:
- Translasi.
- Pensekalaan.
- Rotasi.
Titik hasil transformasi dapat diperoleh melalui rumus affine transformation
Q = P * M + tr
Dimana:
Q: (Qx, Qy, Qz) menyatakan matrix 1×3 yang berisi titik hasil transformasi.
P: (Px, Py, Pz) menyatakan matrik 1×3 yang berisi titik yang akan ditransformasi.
tr: (trx, try, trz) menyatakan matriks 1×3 yang berisi banyaknya pergeseran sumbuk x,y, z.
M: Matriks transformasi berukuran 3×3 seperti berikut
Translansi
Translasi dilakukan dengan menggunakan matriks sebagai berikut:
Scalling (Penskalaan)
Penskalaan dilakukan dengan mengisi tr = (0,0,0) dan matriks M diatur seperti beikut.Rotasi
Berbeda dengan rotasi di 2D yang menggunakan titik pusat(0,0) sebagai pusat perputaran,rotasi 3D menggunakan sumbu koordinat sebagai pusat perputaran. Dengan demikian ada 3
macam rotasi yang dapat dilakukan, yaitu:
- Rotasi terhadap sumbu X
- Rotasi terhadap sumbu Y
- Rotasi terhadap sumbu Z
Rotasi terhadap sumbu X, Y, dan Z diperlihakan seperti pada gambar berikut
Mengingat ada 3 buah sumbu rotasi maka matriks transformasi yang digunakan juga bergantung kepada sumbu putar. Adapun isi masing-masing transformasi sesuai dengan sumbu putar didefinisikan sebagai berikut:
Sekian dan terimakasih.
EmoticonEmoticon