Bagaimana cara membuat garis dengan
menggunakan aplikasi OpenGL?
Saya mendapat tugas untuk membuat
garis dengan menggunakan aplikasi OpenGL. Apa itu OpenGL? Ini saya berikan
ppembahasan tentang OpenGL yang saya ambil dari wikipedia:
OpenGL (Open Graphics Library) adalah
spesifikasi standar yang mendefinisikan sebuah lintas bahasa, lintas platform API untuk mengembangkan aplikasi yang menghasilkan grafis komputer 2D maupun 3D. Antarmuka terdiri dari lebih dari 250
panggilan fungsi yang berbeda yang dapat digunakan untuk menggambar tiga
dimensi yang adegan-adegan kompleks dari bentuk-bentuk primitif sederhana.
OpenGL dikembangkan oleh Silicon Graphics Inc (SGI) pada
tahun 1992 dan secara luas digunakan dalam CAD, realitas
maya, visualisasi ilmiah,
visualisasi informasi, dan simulasi
penerbangan. Hal ini juga digunakan
dalam video game, di mana bersaing dengan Direct3D on Microsoft Windows
platform). OpenGL dikelola oleh sebuah teknologi konsorsium nirlaba yaitu Khronos Group.
Untuk menggunakan aplikasi OpenGL, kita
bisa menggunakan bebagai macam source, tetapi saya disini menggunakan Dev C++
yang saya gabungkan dengan GLUT OpenGL sebagai tambahan applikasi package
didalam Dev C++ itu sendiri. Untuk menginstall package GLUT kedalam Dev C++
tidak akan saya jelaskan disini, mungkin lain kali akan saya jelaskan atau juga
sebenarnya sudah banyak dijelaskan di internet tinggal kita mencarinya dari
search engine seperti google.
Pertama saya akan membuat garis
horizontal yang mempunyai inputan sebagai berikut:
Dan outputnya sebagai berikut:
Selanjutnya untuk inputan garis vertical:
Dan output dari garis vertical:
Dan terakhir untuk inputan dari garis diagonal:
Dan outputnya adalah:
Logika dari program tersebut adalah:
/*
OpenGL animation code goes here */
Komentar diatas selalu ada saat kita
menggunakan OpenGL, dimana dibawah komentar tersebut kita dapat menuliskan
syntax untuk program OpenGL.
/*Untuk membuat garis Vertikal*/
glClearColor
(0.0f, 0.0f, 0.0f, 0.0f);
glClear
(GL_COLOR_BUFFER_BIT);
untuk baris satu dan dua diatas, kita
menggunakan untuk memanggil perintah untuk membersihkan layar dan membuat
background dari layar output tersebut menjadi hitam.
glPushMatrix
();
glClearColor(1,1,1,0);
glColor3f(1,1,1);
baris tiga sampai lima untuk
menentukan warna output dari garis yang akan kita buat.
glBegin(GL_LINES);
glVertex3f(0.10,10.0,13.13);
glVertex3f(0,0,0.0);
untuk baris enam sampai dengan
delapan, kita menggunakan perintah tersebut unutk memulai menggambar garis dan
untuk menentukan titik awal dan akhir dari garis akan akan digambar.
glEnd (); /*untuk mengakhiri gambar garis
dititik akhir*/
untuk baris Sembilan ini kita gunakan
untuk akhir dari gambar gais tersebut dimana akan berakhir pada titik akhir
yang sudah kita tentukan pada baris sebelumnya.
glPopMatrix
();
SwapBuffers (hDC);
Sleep (1);
Untuk garis horizontal dan diagonal sebenarnya
ssama logikana seperti pada garis vertical diatas, hanya ssaja ada perubahan
penentuan titik pada baris enam sampai delapan, dimana untuk garis horizontal:
glVertex3f(-0.6f, 0.0f, 0.0f);
glColor3f(0.0f,
0.0f, 1.0f);
glVertex3f(0.6f,
0.0f, 0.0f);
dan untuk gariss diagonal:
glBegin(GL_LINES);
glVertex3f(0,
0, -0.8);
glVertex3f(9.9,
8.9, 0.1);