Komputer
grafik telah menunjukkan kemajuan yang pesat dari berbagai sisi: algoritma,
software, dan hardware. Cakupannya juga telah meluas ke berbagai bidang:
kedokteran, sains, engineering, bisnis, industri, seni, hiburan, iklan, dan
lain-lain.
Salah
satu tools/library pembuatan aplikasi grafik adalah OpenGL (Open Graphics
Library). OpenGL adalah suatu standar grafik yang menyediakan fungsi-fungsi
low-level untuk pembuatan berbagai gambar pada komputer.
Sebagai
API (Application Programming Interface), OpenGL bersifat
platformindependent/tidak tergantung pada piranti dan platform yang digunakan.
Hal inilah yang membuat OpenGL dapat berjalan pada berbagai sistem operasi:
Windows, UNIX, Mac, Android, dll. OpenGL pada awalnya didesain untuk digunakan
oleh bahasa pemrograman C/C++, namun dalam perkembangannya OpenGL dapat juga
digunakan oleh bahasa pemrograman yang lain seperti Java, Tcl, Ada, Visual
Basic, Delphi, maupun Fortran.
Primitif Drawing
OpenGL
memiliki beberapa obyek dasar yang disebut primitif. Gambar-gambar kompleks dibuat dari kombinasi obyek-obyek
primitif ini. Primitif mudah digambar pada layar monitor karena menggunakan
persamaan geometrik sederhana. Contoh primitif / grafik dasar adalah :
Titik
Garis
Segitiga
Polygon
Perintah OpenGL
OpenGL
memiliki daftar fungsi yang banyak. Untuk saat ini, praktikan hanya perlu fokus
pada beberapa perintah dasar yang tertera pada tabel berikut ini:
Tabel
1.1 Perintah dasar OpenGL
III.
Program
Berikut
ini adalah program yang menggambar obyek primitif.
void display(void)
{
/* bersihkan layar dari titik pixel
yang masih ada */
glClear (GL_COLOR_BUFFER_BIT);
glColor3f (1.0, 1.0, 0.0);
/* gambar 5 titik di layar */
glBegin(GL_POINTS);
glVertex3f (0.0, 0.0, 0.0);
glVertex3f (0.0, 0.8, 0.0);
glVertex3f (0.8, 0.0, 0.0);
glVertex3f (0.0, -0.8, 0.0);
glVertex3f (-0.8, 0.0, 0.0);
glEnd();
glFlush ();
}
void kunci(unsigned char key, int
x, int y)
{
switch (key)
{
/* aplikasi berhenti ketika
tombol q ditekan */
case 27 :
case 'q':
exit(0);
break;
}
glutPostRedisplay();
}
int main(int argc, char *argv[])
{
glutInitWindowSize(400,400);
glutInitWindowPosition(100,100);
glutInitDisplayMode(GLUT_RGB |
GLUT_SINGLE);
glutCreateWindow("Primitif");
glutDisplayFunc(display);
glutKeyboardFunc(kunci);
glutMainLoop();
return 0;
}
Program 1.1
Menggambar 5 titik
Program
diatas jika dijalankan akan menampilkan 5 titik berwarna kuning pada latar
belakang hitam. Posisi titik didefinisikan pada tiap pemanggilan glVertex3f.
Ukuran window mengambil nilai default yang disediakan oleh OpenGL: (-1,-1)
untuk titik kiri bawah dan (1, 1) untuk titik kanan atas.
Yang
perlu diperhatikan di codeblocks, tiap kali user membuat project baru, library
yang diperlukan harus ditambahkan.
No comments:
Post a Comment