Você está na página 1de 1

JAM ANALOG dengan OPENGL

Kumpulan-kumpulan objek primitive dalam pemrograman opengl dapat membentuk seuatu objek yang lebih kompleks. Contoh nya adalah membuat sebuah jam analog lengkap dengan penunjuk angka , dan panah jam, menit, dan detik. Objek primitive yang digunakan dalam membuat jam analog antara lain GL_POLYGON untuk membuat alas jam yang berbentuk lingkaran menggunakan rumus rotasi. GL_LINES digunakan untuk membuat 3 jarum jam yang berbeda sebagai penunjuk jam, menit, dan detik. GL_POINTS untuk membuat titik-titik yang melingkar sebagai penunjuk angka jam. Berdasar pada objek-objek tersebut terbentuklah sebuah kerangka gambar jam analog yang selanjutnya akan dibuat animasi rotasi / perputaran pada jarum-jarum yang ada pada gambar tersebut. objek-objek yang telah dibuat selanjutnya ditata pada fungsi callback dengan urutan tertentu agar tindihan kombinasi objek tepat. Contohnya pemanggilan fungsi lingkaran harus terlebih dahulu dari pada pemanggilan fungsi angka (penunjuk angka), hal ini agar titik angka akan tampil diatas objek lingkaran, begitu pula pada ketiga panah penunjuk fungsi panah detik harus dipanggil sebelum panah menit, dan panah menit dipanggil sebelum fungsi panah jam. Selanjutnya adalah mengatur perputaran jam, perputaran jam dapat dianimasikan menggunakan fungsi timer dengan bentuk animasi berupa perutaran jarum jam terhadap satu titik pusat menggunakan fungsi transformasi berupa glrotate, dimana sudut perindahannya ditentukan dengan aturan bahwa untuk melangkah menunju satu detik maka dibutuhkan besar sudut rotas 6 derajat, hal ini karena dalam satu jam terdapat 60 detik sehingga jarak titik yang menunjukan detik terdapat 60 sehingga sudut dalam satu lingkaran (360 derajat) dibagi dengan 30 sehingga hasilnya adalah 6, tetapi agar arah putaran jarum searah dengan jarum jam (berputar ke arah kanan) maka penambahan sudutnya dinegatifkan (increment). Untuk menentukan panah menit agar sesuai dengan perputaran panah detik maka sudut untuk perpindahan panah menit yaitu sebesar 6 dibagi dengan 60. Hal ini karena satu menit terdapat 60 detik sehingga untuk menuju titik satu menit (6 derajat) panah tersebut harus menempuh 60 titik sudut. Sedangkan panah jarum jam diputar dengan ketentuan sudut perpindahan rotasi 6 derajat dibagi 720 derajat hal ini karena satu jam ditempuh ditempuh selama 60 menit sedangkan angka pada jarum jam sebanyak 12 sehingga sudut perputaran rotasi sebesar 6 dibagi dengan 720 derajat.

Você também pode gostar