1 / 25

BAB VII

BAB VII. TRANSFORMASI OBJEK (TRANSFORMASI AFFINE 2D DAN 3D). Pengertian Dasar Transformasi (1). Pengertian Dasar Transformasi (2). Gambar 1 menunjukkan gambar rumah 2D sebelum dan sesudah transformasi Gambar 2 menunjukkan gambar rumah 3D sebelum dan sesudah transformasi.

melba
Download Presentation

BAB VII

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. BAB VII TRANSFORMASI OBJEK (TRANSFORMASI AFFINE 2D DAN 3D)

  2. Pengertian Dasar Transformasi (1)

  3. Pengertian Dasar Transformasi (2) • Gambar 1 menunjukkan gambar rumah 2D sebelum dan sesudah transformasi • Gambar 2 menunjukkan gambar rumah 3D sebelum dan sesudah transformasi.

  4. Transformasi Affine 2D (1) • Untuk transformasi, koordinat titik P dan Q dalam 2D dinyatakan sebagai : dan • Hal ini berarti titik P berada pada lokasi P = Px i + Py j + , dimana  titik pusat koordinat (tidak harus selalu (0,0)).

  5. Transformasi Affine 2D (2) • Transformasi dari titik P menuju titik Q menggunakan fungsi T() berikut ini. atau ringkasnya Q = T(P)

  6. Transformasi Affine 2D (3) • Transformasi Affine mempunyai bentuk seperti berikut ini. dalam bentuk persamaan matriks persamaan di atas dapat diubah menjadi

  7. Transformasi Affine 2D (4) Contoh : • Lakukan transformasi Affine dari titik P = (1,2) ke Q dengan matriks transformasi • Jawab :

  8. Transformasi Affine 2D (5) • Transformasi Affine berpengaruh pada 4 transformasi dasar, yaitu: • translasi • skala • rotasi • shear

  9. Transformasi Affine 2D (6)

  10. Transformasi Affine 2D untuk Translasi atau Matriks untuk translasi:

  11. Transformasi Affine 2D untuk Skala ( Qx, Qy ) = ( Sx Px , Sy Py ) Matriks untuk skala:

  12. Transformasi Affine 2D untuk Rotasi Qx = Px cos() – Py sin() Qy = Px sin() – Py cos() Matriks untuk rotasi:

  13. Transformasi Affine 2D untuk Shear Qx = Px + hPy Qy = Py Matriks untuk shear:

  14. Transformasi Affine 3D • Transformasinya: dengan

  15. Transformasi Affine 3D untuk Translasi • Matriks transformasinya:

  16. Transformasi Affine 3D untuk Skala • Matriks transformasinya:

  17. Transformasi Affine 3D untuk Rotasi • Rotasi terhadap sb. x • Rotasi terhadap sb. y • Rotasi terhadap sb. z

  18. Transformasi Affine 3D untuk Shear • Matriks transformasinya:

  19. Transformasi Affine 3D dalam OpenGL • Penggambaran titik 3D ke dalam window adalah memproyeksikan titik (x1, y1, z1) menjadi (x1, y2, 0).

  20. Pipelining • Yaitu proses penampilan gambar sampai ke view port.

  21. Fungsi untuk Pipeline pada OpenGL • Untuk mengatur transformasi model view • Untuk mengatur kamera dengan proyeksi paralel • Untuk mengatur posisi kamera

  22. Fungsi untuk Mengatur Transformasi Modelview • glMatrixMode(GL_MODELVIEW) • glScaled(sx, sy, sz) Matrik dari obyek dikalikan masing-masing untuk penskalaan x dengan sx, y dengan sy, dan z dengan sz. Hasilnya dikembalikan lagi ke matrik obyek. • glTranslated(dx, dy, dz) Matrik dari obyek dikalikan masing-masing untuk translasi x dengan dx, y dengan dy, dan z dengan dz. Hasilnya dikembalikan lagi ke matrik obyek. • glRotated(angle, ux, uy, uz) Matrik dari obyek dikalikan masing-masing untuk rotasi sebesar sudut angle dan berputar mengelilingi sumbu antara titik pusat dengan titik (ux, uy, uz).

  23. Fungsi untuk Mengatur Kamera dengan Proyeksi Paralel • glOrtho(left, right, bott, top, near, far) Digunakan untuk membangun ruang pandang yang berupa balok berongga yang sejajar dengan sumbu x sepanjang left sampai right, sejajar sumbu y sepanjang bott sampai top, dan sejajar dengan sumbu z sepanjang -near sampai -far. Digunakan tanda negatif karena defaultnya kamera terletak pada titik pusat dan melihat ke bawah sumbu negatif z. Untuk near bernilai 2, artinya meletakkan bidang dekat pada z=-2 atau 2 unit di depan mata. Demikian juga untuk far, misalnya far = 20, artinya meletakkan bidang jauh 20 unit di depan mata.

  24. Fungsi untuk Mengatur Posisi Kamera • gluLookAt( eye.x, eye.y, eye.z, look.x, look.y, look.z, up.x, up.y, up.z);

  25. Bentuk Dasar untuk Objek 3D dalam Bentuk Wireframe dalam OpenGL • Kubus : glutWireCube(GLdouble size); menampilkan kubus dengan panjang sisi masing-masing sepanjang size. • Donat : glutWireSphare(Gldouble radius, Glint nSlices, Glint nStacks) • Kerucut : glutWireTorus(Gldouble inRad, Gldouble outRad, Glint nSlices, Glint nStacks) • Tempat teh : glutWireTeapot(Gldouble size)

More Related