Sabtu, 27 Oktober 2012

Membuat Garis Diagonal,Vertikal dan Horizontal menggunakan openGL

opengl adalah sebuah library portable maka semua bebas untuk menggunakan bahasa pemrograman apa saja.Agar dapat membuat konsep windowing di OpenGL, kita memerlukan tool tertentu. sekarang yang kita gunakan adalah GLUT (OpenGL Utility Toolkit). GLUT dipilih karena di dalamnya terdapat banyak fungsi yang dapat digunakan untuk membuatan application window. lalu windowing pada GLUT juga bersifat independen terhadap sistem operasi, sehingga kita tidak perlu repot-repot untuk mengubah kode program jika diterapkan pada sistem operasi yang berbeda.Dalam pembuatan main program saya menggunakan bahasa pemrograman C dan menggunakan OS linux.
root@bt:~# apt-get install freeglut3 freeglut3-dev libglew1.5 libglew1.5-dev libglu1-mesa libglu1-mesa-dev libgl1-mesa-glx libgl1-mesa-dev
Pertama membuat garis horizontal dahulu buka editor, ketik code program dibawah ini :


// Penggunaan Library GLUT //
#include <GL/glut.h>

// Function horozontal //
void garis(void) {
   
    // Memebersihakan layar sebeleum pembentukan grafik
    glClear(GL_COLOR_BUFFER_BIT);
    glBegin(GL_LINES);

    //<<Garis Horizontal>>//
    glVertex2f (0.9, -0.0);
    glVertex2f (-0.9, 0.0);
   
    glEnd();
    glFlush();
}

// Fungsi main utama adalah sebagai pembentuk jendela form
int main(int argc, char **argv) {
    glutInit(&argc, argv);
    glutInitDisplayMode(GLUT_DEPTH | GLUT_SINGLE | GLUT_RGBA); // membuat nilai display secara default
    glutInitWindowPosition(500,500); // menentukan posisi window pada saat tampil pertama kali
    glutInitWindowSize(300,300); // menentukan besar size atau ukuran dari window
    glutCreateWindow(argv[0]);
    glutDisplayFunc(garis); // pemanggilan fungsi horizontal
    glutMainLoop();
}

lalu buka terminal untuk mengcompile

root@bt:~# gcc -lglut nama_program.c -o nama_program

  run program :

root@bt:~# ./nama_program
Hasil  program :

  Pada saat membut garis vertikal dan diagonal, ubahlah codingan pada pembentukan garis difunction garis.

Garis Vertikal :

//<<Garis Vertikal>>//
glVertex2f (0.0, -0.9);
glVertex2f (-0.0, 0.9);
/////////////////////////////////




Garis Diagonal :

//<<Garis Diagonal>>//
glVertex2f (-0.9, 0.9);
glVertex2f (-0.0, -0.0);
///////////////////////////////////