Blogger Widgets

Pages

Senin, 22 Oktober 2012

Open GL [Tugas]


A. OPENGL
OpenGL (Open Graphics Library) adalah spesifikasi standar yang mendefinisikan sebuah lintas-bahasa, lintas platform API untuk mengembangkan aplikasi yang menghasilkan grafis komputer 2D maupun3D. 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 [2] 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 (lihat vs OpenGL Direct3D). OpenGL dikelola oleh sebuah teknologi konsorsium nirlaba yaitu Khronos Group.




B. PUSTAKA / LIBRARY


- GLU           - Menambahkan beberapa fitur.
- GLUT        - Tak lagi diteruskan.
- freeglut     - Alternatif GLUT bersumber terbuka.
- GLUI         - Antarmuka pengguna grafis.
- GLSL         - Bahasa "shading" lintas platform bertingkat tinggi.
- Mesa 3D  - Implementasi OpenGL bersumber terbuka, mampu menayangkan rendering perangkat 
                      lunak (software rendering) maupun perangkat keras (hardware acceleration).
  
C. KEGUNAAN
OpenGL digunakan untuk keperluan – keperluan pemrograman grafis. OpenGL bersifat opensource, multi-platform dan multi language. Saat ini semua bahasa pemrograman mendukung OpenGL. Dan OpenGL bisa bekerja dalam lingkungan Windows, Unix, SGI, Linux, freeBSD . Library dasar dari OpenGL adalah GLUT, dengan fasilitas yang bisa dikembangkan. Untuk OS Windows,library ini terdiri dari 3 files yaitu :
  1. Glut.h
  2. Glut32.lib
  3. Glut32.dll
Pada kesempatan kali ini, saya akan menjelaskan langkah-langkah pembuatan garis vertikal, horizontal dan diagonal pada Dev C++. aplikasi yang dibutuhkan  :
    1. Dev C++ [Salah satu dari sekian compiler pemrograman C++]
    2. Library OpenGL  [Glut.h , Glut32.lib , Glut32.dll]

Langkah - Langkahnya antara lain :
a. Buka Program Dev C++.
b. Pilih menu Tools,pilih dan klik Package Manager.


c. Klik icon Install, selanjutnya muncul jendela package to install.


d. Ganti File of Type (untuk mengganti ekstensi file yang ingin kita install), pilih file 
     glut37.zip klik open.
e. Tunggu proses sampai selesai. 
f.  Jika sudah selesai buat program baru, langkah-langkahnya :
     - Pilih menu File > pilih New > pilih Project.
     - Pada bagian ini pilih Tag Multimedia > pilih dan klik OpenGL.
     - Selanjutnya beri nama Project.
g. Lanjutkan dengan Pembuatan program. Pada lembar kerja yang sudah terisi __source code openGL ini. yang harus kita lakukan adalah mencari bagian __yangbertuliskan /* OpenGL animation code goes here */ . untuk mengerjakan __program dengan file multimedia OpenGL kita cukup mengubah-ubah pada bagian __ini saja
   
     1. Pembuatan Garis Vertikal
     masukan code seperti pada gambar ini :

      Code :
/*Untuk membuat garis Vertikal*/
(sebagai Judul, tidak mempengaruhi apapun)

glClearColor (0.0f, 0.0f, 0.0f, 0.0f);
 (berfungsi untuk memilih warna yang digunakan untuk membersihkan latar dalam mode RGBA)

glClear (GL_COLOR_BUFFER_BIT);
(berfunsi untuk membersihkan layar background dengan warna hitam)

glPushMatrix ();             
(berfungsi untuk Membuat baris kode menjadi tidak berlaku pada bagian luar)
 
glClearColor(1,1,1,0);    
(berfungsi untuk menentukan warna garis/titik)
 
glColor3f(1,1,1); //          
(berfungsi untuk menentukan warna garis/titik)

glBegin(GL_LINES);                 
(berfungsi untuk menggambar garis dari titik yang digunakan)

glVertex3f(0.10,10.0,13.13);  
(berfungsi untuk menentukan titik awal yang digunakan)


glVertex3f(0,0,0.0);                 
(berfungsi untuk menentukan titik akhir yang digunakan)

glEnd ();             
(berfubgsi untuk mengakhiri garis gambar dititik akhir)

glPopMatrix (); 
(berfungsi untuk Membuat baris kode menjadi tidak berlaku untuk bagian luar)

SwapBuffers (hDC);
(berfungsi untuk menukar bagian belakang buffer menjadi buffer layar)

Sleep (1);

Output :
Jalankan program dengan menekan tombol F9, file akan meminta untuk di save.
Jika sudah tidak terdapat error, menghasilkan Output :


  2. Pembuatan Garis Horizontal
     masukan code seperti pada gambar ini :
     Code : 
/*Untuk membuat garis Horizontal*/
(sebagai Judul, tidak mempengaruhi apapun)

glClearColor (0.0f, 0.0f, 0.0f, 0.0f);
 (berfungsi untuk memilih warna yang digunakan untuk membersihkan latar dalam mode RGBA)

glClear (GL_COLOR_BUFFER_BIT);
(berfunsi untuk membersihkan layar background dengan warna hitam)

glPushMatrix ();             
(berfungsi untuk Membuat baris kode menjadi tidak berlaku pada bagian luar)
 
glClearColor(1,1,1,0);    
(berfungsi untuk menentukan warna garis/titik)
 
glColor3f(1,1,1); //          
(berfungsi untuk menentukan warna garis/titik)

glBegin(GL_LINES);                 
(berfungsi untuk menggambar garis dari titik yang digunakan)

glColor3f(0.0f, 0.0f, 1.0f);
(berfungsi untuk menentukan warna garis/titik)


glVertex3f(-0.6f, 0.0f, 0.0f);                 
(berfungsi untuk menentukan titik yang digunakan)

 
glColor3f(0.0f, 0.0f, 1.0f);        
(berfungsi untuk menentukan warna garis/titik)


glVertex3f(0.6f, 0.0f, 0.0f); 
(berfungsi untuk menentukan titik yang digunakan)

glEnd ();             
(berfubgsi untuk mengakhiri garis gambar dititik akhir)

glPopMatrix (); 
(berfungsi untuk Membuat baris kode menjadi tidak berlaku untuk bagian luar)

SwapBuffers (hDC);
(berfungsi untuk menukar bagian belakang buffer menjadi buffer layar

Sleep (1);

Jalankan program dengan menekan tombol F9, file akan meminta untuk di save.
Jika sudah tidak terdapat error, menghasilkan Output :


  3. Pembuatan Garis Diagonal
     masukan code seperti pada gambar ini :
     Code : 
/*Untuk membuat garis Diagonal*/
(sebagai Judul, tidak mempengaruhi apapun)

glClearColor (0.0f, 0.0f, 0.0f, 0.0f);
(berfungsi untuk memilih warna yang digunakan untuk membersihkan latar dalam mode RGBA)

glClear (GL_COLOR_BUFFER_BIT);
(berfunsi untuk membersihkan layar background dengan warna hitam)

glPushMatrix ();             
(berfungsi untuk Membuat baris kode menjadi tidak berlaku pada bagian luar)
 
glClearColor(1,1,1,0);    
(berfungsi untuk menentukan warna garis/titik)
 
glColor3f(1,1,1); //          
(berfungsi untuk menentukan warna garis/titik)

glBegin(GL_LINES);                 
(berfungsi untuk menggambar garis dari titik yang digunakan)

glVertex3f(0,0,-0.8);        
(berfungsi untuk menentukan titik awal yang digunakan)

glVertex3f(9.9,8.9,0.1);    
(berfungsi untuk menentukan titik akhir yang digunakan)


glEnd ();             
(berfungsi untuk mengakhiri garis gambar dititik akhir)

glPopMatrix (); 
(berfungsi untuk Membuat baris kode menjadi tidak berlaku untuk bagian luar)

SwapBuffers (hDC);
(berfungsi untuk menukar bagian belakang buffer menjadi buffer layar

Sleep (1);

Jalankan program dengan menekan tombol F9, file akan meminta untuk di save.
Jika sudah tidak terdapat error, menghasilkan Output :




Demikian Penjelesan mengenai pembuatan Garis dengan menggunakan OpenGL pada Dev C++ untuk tugas Grafik Komputer dan Pengolahan Citra. apabila masih adanya kesalahan saya mohon maaf sebesar-besarnya, mudah-mudahan penjelasan ini bisa berguna bagi pembaca dan penulis.





Efek Blog