Modul 6 Interaksi dengan Keyboard dan Mouse

dokumen-dokumen yang mirip
Bab 1 Pengenalan GLUT

MODUL 7 OBJEK 3D A. KOMPETENSI DASAR

Modul 3 Objek 2 Dimensi

Modul 2 Primitive Objects

BAB I PENGENALAN OPENGL

MODUL VI PROSEDUR. Secara garis besar ada dua keuntungan yang bisa diperoleh dari pemakaian prosedur, yaitu:

MODUL V REPETITIVE. Modul Praktikum Bahasa Pemrograman Visual (BPV)

Tabel 1 Perintah-perintah OpenGL yang telah dipraktekan

Tutorial 04 Modeling & Transformasi Proyeksi

MODUL VI ACTION SCRIPT

MODUL IV CONDITION 1

BAHAN PRAKTIKUM FLASH. Digunakan Untuk matakuliah Pengembangan Media Pembelajaran Matematika

BAB IV IMPLEMENTASI DAN PENGUJIAN SISTEM

MODUL 7 JavaScript pada Form HTML

Tips Trik Ms. Power Point 2010 Membuat Media Interaktif

MODUL 9 Material Texture

TIM ASISTEN PRAKTIKUM ALGORITMA DAN PEMROGRAMAN 2016

/*Bismillahirrohmanirrohim _Fatimah_Rombel 2_Projek_Akhir_Komgraf*/ #include <stdio.h> #include <stdlib.h> #include <string.

MODUL VII MATH CLASS ACTION SCRIPT 2.0

MODUL IV VIDEO EFFECT

TRANSFORMASI. Tujuan transfomasi adalah:

MODUL 7 FUNGSI A. Tujuan. B. Petunjuk. C. Dasar Teori

Gambar 1.1. Fill dan Stroke

MODUL I PENGENALAN VISUAL BASIC.NET

MODUL. Fungsi (Function) Modul Praktikum C++ Dasar Pemrograman Komputer JURUSAN TEKNIK ELEKTRO FAKULTAS TEKNIK

Gambar 1.1 Susunan layer dan objek bola

Universitas Komputer Indonesia. Pemrograman dengan C++ Builder

Pengenalan Bahasa C++, Algoritma Pemrograman, Integrated Development Equipment (IDE) Visual C++ dan Dasar Dasar Bahasa C++

Macromedia Flash Bagian II

BAB IV IMPLEMENTASI DAN PENGUJIAN

Bekerja dengan Drawings

MODUL IV CONDITION 2

Algoritma Pemrograman A

MODUL I PENGENALAN IDE C++, ALGORITMA DAN PEMROGRAMAN

MODUL VI INTERAKSI DATABASE

Workshop Singkat Membuat Game Shooter

PRAKTIKUM 2. Variabel, Tipe Data dan Operator. Tipe data dan variabel. - Microsoft Visual Studio 2010

Gambar 2.1. Komponen yang digunakan. Gunakan komponen-komponen seperti pada gambar 2.1 untuk membuat form pada gambar 2.2.

BAB 4 IMPLEMENTASI DAN EVALUASI

Latihan Animasi Flash

Bab 5. Dasar-dasar Action Script

MODUL 10 Fungsi 10.1 Kompetensi 10.2 Alat Dan Bahan: 10.3 Ulasan Teori: Dasar Fungsi Deklarasi Fungsi

Tabel 1 Perintah-perintah OpenGL yang telah dipraktekan

TIPE DATA Pertemuan (K-03/L-03)

Penggunaan Netbeans IDE, Hello World, variable dan Operator aritmetika.

Modul Praktikum Algoritma dan Struktur Data

Modul Praktikum Basis Data 11 Membuat Menu dengan Form

MODUL V ANIMASI DASAR

DAFTAR ISI Daftar Isi Pertemuan 1 Dasar Animasi Pertemuan 2 Tombol Musik Pertemuan 3 Tombol Frame Pertemuan 4 Scroll Text Pertemuan 5 Kursor Ku

BAHAN AJAR INTERAKTIF

MODUL I MELAKUKAN EDITING GAMBAR (Mengenal Menu dan Ikon pada GIMP)

TUTORIAL FLASH 8 ACTION SCRIPT PADA MOVIE CLIP

MODUL 1 STANDAR INPUT DAN OUTPUT

PEMROGRAMAN KOMPUTER KODE MODUL: TIN 202 MODUL IV PENGENALAN MICROSOFT VISUAL BASIC 6.0

BAB III ANALISA DAN PERANCANGAN

MODUL II FUNGSI NUMERIK. A. TUJUAN Memahami mengenai penggunaan numerik. Membuat program numerik sederhana menggunakan VB.

LAPORAN PRAKTIKUM ALGORITMA DAN PEMROGRAMAN ( Implementasi Rekursi Pada Java)

I. JUDUL Array. Pengertian Array. Deklarasi Array PRAKTIKUM 6 ARRAY II. TUJUAN. III. ALAT DAN BAHAN - Microsoft Visual Studio 2010

BAB II LINGKUNGAN PEMROGRAMAN GRAFIK DENGAN OPEN GL

TUTORIAL MEMBUAT ANIMASI FILM MOBIL DAN SEKILAS TENTANG ACTIONS SCRIPT

Gambar 1. Tampilan Layar Sebuah Program Animasi

PEMROGRAMAN BERORIENTASI OBJEK

SILABUS KURIKULUM TINGKAT SATUAN PENDIDIKAN TEKNOLOGI INFORMASI DAN KOMUNIKASI

CONTOH SOAL. 1. Action script yang tepat pada blank {Soal 1} untuk tombol sehingga property alpha movie clip gbr menjadi 50% adalah.

BAB IV IMPLEMENTASI DAN UJI COBA

1 Blender animation club. Book modeling 1

Kreatif dan Produktif di Internet : Pengenalan dan Pelatihan Scratch

PROGRAM STUDI D3 JURUSAN TEKNIK KOMPUTER POLITEKNIK NEGERI SRIWIJAYA PALEMBANG TK Computer 2 (Multimedia) Hand On Lab 9

MODUL PRAKTIKUM TI014 STRUKTUR DATA Season 1

Membuat Kuis Dengan Menggunakan Template Macromedia Flash 8

Dewanto Harjunowibowo

BAB IV IMPLEMENTASI DAN EVALUASI. mempersiapkan kebutuhan system (baik hardware maupun software), persiapan

Pada praktikum ini, anda akan mengimplementasikan sebuah game sederhana, bernama Smiley Face.

MODUL XI MEMBUAT LAPORAN

Membuat Sequence Diagram Menggunakan Visual Paradigm

Tutorial Cara Membuat Logo Transtv di CorelDraw

MODUL 1 PENGENALAN PROGRAM C++ DAN PERNYATAAN MASUKAN-KELUARAN

BAB 3 SEARCHING A. TUJUAN

MODUL 4 PERULANGAN A. TUJUAN

Tujuan : A. Percabangan Percabangan di dalam Java terdapat 2 macam, yaitu dengan memakai if dan switch.

Praktikum 6 SubForm dan Kode VBA

A. Mendefinisikan Seleksi

ALGORITMA DAN STRUKTUR DATA POINTER DAN FUNCTION

MODUL IV PROCEDURE. [Private public static]sub namaprosedur (daftarargumen) End Sub

STORYBOARD MULTIMEDIA INTERAKTIF. Disusun : Tim ICT FKIP Unram

FUNGSI II. Variabel Statis. Sifat variabel statis: Sintaks: static tipe_data nama_variabel; Contoh: static int angka;

Praktikum Modul Praktikum ke Judul Materi Tujuan / Sasaran Waktu (lama) Aplikasi yang digunakan

MODUL 3 PRAKTIKUM PEMROGRAMAN VISUAL VARIABEL, TIPE DATA, DAN OPERATOR PADA VB.NET

1. TUJUAN Setelah menyelesaikan modul ini, anda diharapkan untuk bisa mengenali teknikteknik lanjutan dalam mengedit sebuah video.

Komunikasi Multimedia

Dasar Pemrograman Java

MODUL PELATIHAN MIKROKONTROLLER UNTUK PEMULA DI SMK N I BANTUL OLEH: TIM PENGABDIAN MASYARAKAT JURUSAN TEKNIK ELEKTRO

Modul Praktikum Bahasa Pemrograman Visual (BPV) MODUL III STRING

EDITING DASAR OBYEK MODUL 2

4. Kegiatan Belajar 4 : Membuat Animasi 2D ke dalam multimedia

BAB 3 PERANCANGAN PROGRAM APLIKASI

LAMPIRAN SOURCE CODE

BAB III ANALISA DAN PEMBAHASAN MASALAH

DIAN PRATIWI. ST, MTI

BAB III ANALISIS MASALAH DAN RANCANGAN PROGRAM

Transkripsi:

Modul 6 Interaksi dengan Keyboard dan Mouse A. KOMPETENSI DASAR Memahami prinsip-prinsip deteksi input berupa interaksi dari keyboard. Membuat objek 2D yang dikendalikan dengan keyboard. Memahami prinsip-prinsip pembuatan interaksi objek 2D menggunakan mouse. Membuat interaksi objek 2D menggunakan mouse. B. ALOKASI WAKTU 4 JS (4x50 menit) C. PETUNJUK Awali setiap aktivitas dengan do a, semoga berkah dan mendapat kemudahan. Pahami Tujuan, dasar teori, dan latihan-latihan praktikum dengan baik dan benar. Kerjakan tugas-tugas dengan baik, sabar, dan jujur. Tanyakan kepada asisten/dosen apabila ada hal-hal yang kurang jelas. D. DASAR TEORI INTERAKSI KEYBOARD 1. Fungsi dasar pembuatan animasi dengan menggunakan KeyboardFunction GLUTAPI void APIENTRY glutkeyboardfunc(void (GLUTCALLBACK *func)(unsigned char key, int x, int y)); Dalam penggunaan glutkeyboardfunc dimungkinkan untuk mendeteksi input dari keyboard. Fungsi ini diletakkan pada fungsi main dari program, dan parameternya adalah callback function yang telah didefinisikan berupa fungsi dengan 3 parameter, seperti contoh di bawah ini. void mykeyboard(unsigned char key, int x, int y){ if(key == 'a') gltranslatef(4,0,0); //seleksi tombol yang ditekan void myspecialkeyboard(int key, int x, int y){ switch(key){ case GLUT_KEY_??? : ; break; Agar fungsi keyboard ini dapat dideteksi terus maka fungsi untuk animasi (update) harus telah disertakan. 2016 Jurusan Teknik Elektro FT UM 1

Untuk fungsi callback yang memanggil tombol keyboard normal/biasa adalah glutkeyboardfunc(mykeyboard); //hanya memanggil fungsi mykeyboard sedangkan untuk mendeteksi tombol-tombol keyboard yang bersifat spesial seperti tombol F1, arah panah, Home, Enter, dsb dapat menggunakan callback function glutspecialfunc(myspecialkeyboard); //hanya memanggil fungsi myspecialkeyboard untuk tombol-tombol spesialnya adalah sebagai berikut INTERAKSI MOUSE 1. Fungsi dasar pembuatan interaksi dengan menggunakan MouseFunction GLUTAPI void APIENTRY glutmousefunc(void (GLUTCALLBACK *func)(int button, int state, int x, int y)); Paramater func adalah fungsi yang akan ditangani dengan event klik mouse. GLUTAPI void APIENTRY glutmotionfunc(void *func(int x, int y)); Fungsi di atas adalah fungsi pelengkap dari fungsi interaksi mouse untuk mendeteksi gerakan mouse. 2. Inisialisasi dalam penggunaan MouseFunction void mouse(int button, int state, int x,int y){ if(button==glut_left_button && state==glut_down) drawdot(x,480-y); if(button==glut_right_button && state==glut_down) drawdot2(x,480-y); if(button==glut_middle_button && state==glut_down) drawdot3(x,480-y); void motion(int x,int y){ 2016 Jurusan Teknik Elektro FT UM 2

GLUT_LEFT_BUTTON untuk inisialisasi button mouse kiri. GLUT_RIGHT_BUTTON untuk inisialisasi button mouse kanan. GLUT_MIDDLE_BUTTON untuk inisialisasi button mouse tengah. Fungsi dari GLUT_DOWN adalah untuk inisialisasi ketika tombol mouse ditekan. Fungsi dari GLUT_UP adalah untuk inisialisasi ketika tombol mouse dilepaskan. Kemudian pada main program perlu menambahkan fungsi untuk callback fungsi MouseFunction. glutmousefunc(mouse); glutmotionfunc(motion); E. AKTIFITAS PRAKTIKUM PRAKTIKUM INTERAKSI KEYBOARD Berikut adalah script dasar untuk kegiatan praktikum interaksi keyboard dan gluttimerfunc(50,timer,0); glutdisplayfunc(display); glutkeyboardfunc(mykeyboard); glutspecialfunc(myspecialkeyboard); 1. Buatlah project baru pada Visual Studio dengan nama prak4-keyboard1. Berikut adalah fungsifungsi yang harus ditambahkan. Sediakan fungsi drawquad(); untuk menggambar sebuah kotak. Fungsi mykeyboard adalah callback function yang akan dipanggil oleh glutkeyboardfunc(mykeyboard); dan fungsi tersebut berada di dalam fungsi main. Berikan kesimpulan dari hasil kegiatan (mengacu pada fungsi mykeyboard)! 2016 Jurusan Teknik Elektro FT UM 3

2. Modifikasi program pada latihan 1 dan tambahkan program pada fungsi mykeyboard sehingga dapat menggerakkan objek ke atas dan ke bawah. Tampilkan source codenya. Berikan kesimpulan! 3. Buatlah project baru pada Visual Studio dengan nama prak4-keyboard2. Berikut adalah cara untuk mendeteksi tombol-tombol keyboard yang memiliki fungsi spesial. Berikan kesimpulan! Dan pada fungsi main tambahkan glutspecialfunc(myspecialkeyboard); Beri Kesimpulan! 4. Modifikasi kode progam pada latihan 3 dan tambahkan program pada fungsi myspecialkeyboard sehingga dapat memutar objek kebalikan putaran dengan menekan tombol panah kanan. Tampilkan source codenya. Berikan kesimpulan! 5. Tambahkan pada fungsi mykeyboard, untuk merubah warna obyek sebanyak 4 pilihan merah, hijau, biru, kuning (deteksi 4 tombol keyboard (normal) lain)! PRAKTIKUM INTERAKSI MOUSE Berikut adalah script dasar untuk kegiatan praktikum interaksi mouse. int w = 480, h = 480; //variabel global glutinitwindowsize(w,h); gluortho2d(-w/2,w/2,-h/2,h/2); 1. Buatlah project baru pada Visual Studio dengan nama prak4-mousemotion. Fungsi mydisplay callback function yang di dalamnya menggunakan fungsi Points untuk memindah posisi objek sesuai pointer mouse. float x=0,y=0,z=0; void mydisplay(void) { glclear(gl_color_buffer_bit); glpushmatrix(); gltranslatef(x,y,z); drawquad(5,5); glpopmatrix(); glflush(); 2016 Jurusan Teknik Elektro FT UM 4

Fungsi mouse untuk inisialisasi mouse event. 2. Sempurnakan program di atas sehingga tombol tengah ditekan akan menyebabkan objek memiliki skala yang membesar (1.1) dan tombol kanan ditekan akan menyebabkan skala mengecil (0.9). Berikan source code program. 3. Ubahlah program sehingga tombol kanan ditekan skala membesar (2.0) dan ketika tombol kanan dilepaskan (UP) skala mengecil (0.5). Berikan source code program. 4. Buatlah nilai parameter yang ada pada fungsi gluortho2d(-100,100,-100,100); Jelaskan apa yang terjadi dan beri kesimpulan (gambar sistem koordinat) hubungan antara sistem koordinat opengl dan sistem koordinat yang digunakan oleh mouse pointer. 5. Buatlah project baru pada Visual Studio dengan nama prak4-mousemotion1. Gunakan fungsi yang sama dengan no 1 dan lengkapi dengan fungsi Motion. Buatlah fungsi untuk deteksi motion. Berikan kesimpulan! 2016 Jurusan Teknik Elektro FT UM 5

F. TUGAS 1. Buatlah sebuah baling-baling yang bisa perputar secara clockwise dan unclockwise yang pusatnya berada pada pusat koordinat. Dengan kontrol dari tombol k dan l. 2. Buatlah 2 benda (kotak dan segitiga) yang dapat dikendalikan secara individual, dengan memanfaatkan tombol untuk tangan kanan dan tombol untuk tangan kiri. ( a, s, d, w untuk kotak dan tombol panah atas, bawah, kiri, kanan untuk segitiga) atau dengan metode yang lain 3. Buatlah program yang dapat mengubah skala objek secara interaktif menggunakan interaksi drag. Ketika tombol kanan ditekan maka posisi x dan y disimpan dalam variabel global, jika drag dilakukan maka jarak pointer terhadap posisi yang disimpan sebelumnya akan menyebabkan perubahan skala secara interaktif (menjauh = membesar, mendekat = mengecil). 4. Buatlah program untuk deteksi DOUBLE CLICK, ketika DOUBLE CLICK object yang dipilih skalanya menjadi 1.5, sedangkan untuk DOUBLE CLICK berikutnya Ukuran object tersebut kembali seperti semula. Buatlah Kesimpulan dan Algoritmanya. 2016 Jurusan Teknik Elektro FT UM 6