Teknik Informatika – Matematika. Skripsi Sarjana Program Ganda. Semester
Ganjil 2005/2006. PERANCANGAN APLIKASI ANIMASI PENGGUNAAN.
UNIVERSITAS BINA NUSANTARA
Program Ganda Teknik Informatika – Matematika Skripsi Sarjana Program Ganda Semester Ganjil 2005/2006
PERANCANGAN APLIKASI ANIMASI PENGGUNAAN QUATERNION SEBAGAI PENGGANTI MATRIKS ROTASI DALAM ANIMASI GRAFIK 3 DIMENSI Fransiscus Tanu NIM : 0500603986
ABSTRAK Di dalam dunia animasi grafik 3 dimensi , representasi euler telah dipakai secara luas , baik di dalam industri maupun di dalam pendidikkan. Seiring dengan perkembangan dunia animasi , ditemukan kelemahan pada representasi euler , yang disebut sebagai gimbal lock. Quaternion adalah struktur aljabar yang ditemukan oleh William Rowan Hamilton. Berbeda dengan representasi euler , quaternion tidak mengalami gimbal lock terhadap sumbu utama ( x , y , z ). Penggunaan Quaternion secara luas masih belum dikenali di dunia pendidikan. Dari perancangan ini , memperlihatkan masalah gimbal lock dengan representasi euler , dan pemecahan masalah gimbal lock dengan menggunakan Quaternion.
Kata Kunci : Gimbal lock , quaternion , representasi euler , hamilton , animasi.
iv
PRAKATA Sebelumnya penulis mengucap syukur kepada Tuhan Yang Maha Esa , karena atas penyertaan-Nya , penulis dapat menyelesaikan tugas skripsi yang berjudul : “Perancangan Aplikasi Animasi Penggunaan Quaternion Sebagai
Pengganti Matriks Rotasi Dalam Animasi Grafik 3
Dimensi”
sebagai syarat untuk memperoleh gelar sarjana pada Jurusan Ganda ( Teknik Informatika – Matematika ) di Universitas Bina Nusantara. Dalam proses membuat dan menyelesaikan skripsi ini, penulis mendapatkan bimbingan , dorongan , semangat dan fasilitas dari berbagai pihak yang mendukung penulis sehingga dapat menyelesaikan skripsi ini. Ucapan terima kasih disampaikan terutama kepada : • Bapak Prof Dr. Drs. Gerardus Polla, M.App.Sc., selaku Rektor Universitas Bina Nusantara, yang memimpin Universitas Bina Nusantara dan memberikan kesempatan kepada mahasiswa untuk menerapkan pengetahuan yang dimiliki dengan mengadakan program studi Skripsi. • Bapak Wikaria Gazali, S.Si., M.T., selaku Dekan Jurusan Matematika dan Statistika, yang telah memberikan persetujuan terhadap topik skripsi yang diajukan dan memberikan banyak informasi dalam prosedur penulisan skripsi. • Bapak Drs. Ngarap Imanuel Manik, M.Kom., selaku Kepala Jurusan Matematika dan Statistika yang telah memberikan persetujuan terhadap topik skripsi dan memberikan penunjukan pembimbing yang terbaik bagi penulis , serta banyak memberikan masukan dan saran terhadap penulisan ini. • Bapak Rojali , S,Si. , selaku Sekretaris Jurusan Matematika dan Statistika yang telah banyak memberikan masukan dan saran terhadap prosedur dalam penyusunan dan pengumpulan skripsi. • Bapak Sangadji, Drs., M.Sc., Ph.D dan Bapak Djunaidy Santoso, Dipl.Ing., M.Kom sebagai pembimbing penulis dalam menyelesaikan skripsi ini , atas kerja keras dan bimbingan mereka , penulis dapat menyelesaikan tugas ini. Selain itu, penulis juga mengucapkan terima kasih kepada kedua orang tua yang telah mendukung dan memberikan kepercayaan penuh kepada penulis sehingga penulis dapat menyelesaikan Skripsi ini. Sekiranya Skripsi ini dapat bermanfaat bagi pembaca ,khususnya mahasiswa Bina Nusantara. Kritik dan saran diterima dengan terbuka agar tulisan ini dapat diperbaiki dan menjadi lebih berguna. Jakarta, Februari 2006
Penulis
v
DAFTAR ISI ABSTRAK ........................................................................................................................iv PRAKATA.........................................................................................................................v DAFTAR ISI.....................................................................................................................vi DAFTAR GAMBAR ..................................................................................................... viii DAFTAR LAMPIRAN.....................................................................................................ix BAB 1 PENDAHULUAN .................................................................................................1 1.1 Latar Belakang Masalah...........................................................................................1 1.2 Rumusan Rancangan................................................................................................2 1.3 Spesifikasi Rancangan .............................................................................................2 1.4 Ruang Lingkup Masalah ..........................................................................................2 1.5 Tujuan dan Manfaat Perancangan............................................................................2 1.6 Penelitian yang Relevan...........................................................................................3 BAB 2 LANDASAN TEORI.............................................................................................5 2.1 Matrix Rotasi 3D dengan Representasi Euler ..........................................................5 2.2 Struktur Aljabar .....................................................................................................10 2.2.1 Semigrup .........................................................................................................10 2.2.2 Grup ................................................................................................................10 2.2.3 Ring.................................................................................................................11 2.2.4 Quaternion ......................................................................................................11 2.2.4.1 Operasi Quaternion.................................................................................15 2.2.4.2 Penggunaan Quaternion Dalam Rotasi....................................................17 BAB 3 ANALISIS DAN PERANCANGAN ..................................................................20 3.1 Spesifikasi Rumusan Rancangan ...........................................................................20 3.2 Perancangan Modul ...............................................................................................21 3.3 Rancangan Tampilan Layar ...................................................................................22 3.4 Perancangan Diagram Alir ( Flowchart)................................................................24 3.4.1 Flowchart MenuUtama ...................................................................................25 3.4.2 Flowchart Proses Rotasi Euler ........................................................................26 3.4.3 Flowchart Proses Rotasi Quaternion ..............................................................27 3.5 Perancangan Diagram Transisi ..............................................................................28 BAB 4 IMPLEMENTASI HASIL PENELITIAN .........................................................29 4.1 Spesifikasi Hardware dan Software .......................................................................29 4.2 Implementasi Rancangan .......................................................................................29 4.2.1 Layar Menu Utama .........................................................................................30 4.2.2 Layar Gimbal Lock Animation .......................................................................31 4.2.3 Layar Euler Representation dan Quaternion Representation .........................32 4.3 Evaluasi Rancangan ...............................................................................................33 4.3.1 Kelebihan Program .........................................................................................33 4.3.2 Kelemahan Program........................................................................................33 vi
BAB 5 KESIMPULAN DAN SARAN ...........................................................................34 5.1 Kesimpulan ............................................................................................................34 5.2 Saran ......................................................................................................................35 DAFTAR PUSTAKA ........................................................................................................x RIWAYAT HIDUP ........................................................................................................ xii LAMPIRAN…………………………………………………………………………….L1
vii
DAFTAR GAMBAR Halaman Gambar 2.1 Gambar 2.2 Gambar 3.1 Gambar 3.2 Gambar 3.3 Gambar 3.4 Gambar 3.5 Gambar 3.6 Gambar 3.7 Gambar 3.8 Gambar 4.1 Gambar 4.2 Gambar 4.3
Vektor di Ruang 3 Dimensi Arah Rotasi Di Ruang 3 Dimensi Rancangan Layar Animasi Gimbal Lock Rancangan Layar Animasi Representasi Euler Rancangan Layar Animasi dengan Quaternion Simbol Flowchart Flowchart Menu Utama Flowchart Proses Rotasi Euler Flowchart Proses Rotasi Quaternion Diagram Transisi Menu Utama Animasi Gimbal Lock Representasi Euler dan Quaternion
viii
5 5 20 21 21 22 23 24 25 26 28 29 30
DAFTAR LAMPIRAN Halaman LAMPIRAN A
LISTING PROGRAM…...………………………...… A.1. Form Menu Utama C#..................................... A.2. Class Euler C#…………….……………...… A.3. Class QuaternionClass C#..………………….
ix
L.1 L.1 L.2 L.3