Minggu, 18 Oktober 2015

Grafik Komputer dan Penggolahan Citra

Penjelasan mengenai garis horizontal, vertikal, dan diagonal pada OpenGL dalam Dev C++

Dalam OpenGL  pada dev c++ saya akan menjelaskan program inputan dalam membuat garis vertical, horizontal, serta diagonal. Untuk itu sebelum membuat program garis pada openGL terlebih dahulu menginstal glut.h pada library dev c++. versi  dari glut.h tersebut adalah glut-3.7.6 . berikut ini saya akan menjelaskan langkah-langkah  pada dev c++ :

Pilih Menu Tools > Package Manager.

Kemudian pilih install pada dev c++.

Pilih file glut-3.7.6.bin untuk melakukan penginstalan pada dev c++

selanjutnya Pilih  Install untuk pemasangan dev c ++ package.

penginstallan package pada dev c++ selesai kemudian pilih finish untuk melanjutkan proses selanjutnya.

Selanjutnya dalam pembuatan program openGL kita dapat menjalankan sebuah project dalam dev c++  dengan langkah berikut.


Dalam pembuatan garis pada dev c++ dapat menggunakan File Header :
#include <GL/glu.h>
#include <GL/glut.h>
#include <GL/gl.h>
#include <stdlib.h>
#include <cstdlib>
#include <windows.h>
#include <iostream>

perintah diatas ini untuk memanggil semua file Header yang telah  dibutuhkan dalam pembuatan program garis pada dev c++, kemudian iostream ini  sebagai input dan output sedangkan glu,glut,gl berguna agar program dapat menggunakan statement-statement OpenGL.
kita dapat menulis programnya sebagai berikut :

penjelasan pada program garis sumbu:
  1. glClear (GL_COLOR_BUFFER_BIT);  Digunakan untuk membersihkan layar latar belakang dengan warna hitam.
  2. glPushMatrix (); Digunakan untuk membuat baris kode menjadi tidak berlaku untuk bagian luar.
  3. glColor3f (1.0,1.0,1.0); Digunakan untuk menentukan warna garis/titik.
  4. glBegin (GL_LINES); Digunakan untuk menggambar garis dari titik.
  5. glVertex3f (x+0.5,a+0.5,0.0); Digunakan untuk menentukan titik awal pada garis a.
  6. glVertex3f (x+0.5,b+0.5,0.0); Digunakan untuk menentukan titik awal pada garis b.
  7. glEnd (); Digunakan untuk mengakhiri suatu gambar garis dititik akhir.
  8. glPopMatrix (); Digunakan untuk membuat baris kode menjadi tidak berlaku untuk bagian luar.
penjelasan pada menu program garis:
menu:
int a;
cout<<"MENU \n"; (mencetak MENU yang ada dalam komentar (“))
cout<<"1. Garis Vertikal \n"; (untuk mencetak 1.Garis Vertikal)
cout<<"2. Garis Horizontal \n"; (untuk mencetak 2.Garis Horizontal)
cout<<"3. Garis Diagonal \n"; (untuk mencetak 3.Garis Diagonal)
cout<<"4. Exit \n"; (untuk mencetak 4. Exit)
cout<<"Masukkan Pilihan Anda : "; cin>>a; (untuk mencetak masukkan pilihan anda : pada inputan dalam variabel a)
cout<<"\n"; (untuk mencetak enter)
glutInit(&iArgc, cppArgv);
glutInitDisplayMode (GLUT_SINGLE | GLUT_RGB); (untuk penampilan layar single dan warna dasar)
glutInitWindowSize(500, 500); (untuk mengatur ukuran layar yang akan ditampilkan dalam ukuran 500x500)
glutInitWindowPosition(400, 200); (untuk mengatur layar tampilan dalam posisi 400,200)
glutCreateWindow("OpenGL with C++"); (untuk membuat layar output dengan keterangan padaOpenGL with C++)
Initialize(); (untuk pemanggilan fungsi Initialize)

switch(a)
{
                case 1: (untuk memanggil piliha case 1)
                glutDisplayFunc(vertikal); (untuk menampilkan/memanggil fungsi dalam vertikal)
    glutMainLoop(); (untuk melakukan perulangan)
                return 0;
                case 2: (untuk memanggil pilihan case 2)
                glutDisplayFunc(horizontal); (untuk menampilkan fungsi dalam bentuk horizontal)
                glutMainLoop(); (untuk melakukan perulangan pada case 2)
    return 0;
                case 3:  (untuk memanggil pilihan case 3)
                glutDisplayFunc(diagonal); (untuk menampilkan fungsi dalam bentuk horizontal)
                glutMainLoop(); (untuk melakukan perulangan pada case 3)
                return 0;
                case 4:  (untuk memanggil pilihan case 4)
                break; 
                return 0;
                                                               
                default:
                cout<<"Pilihan Anda Salah"; goto menu;} (untuk menampilkan pada komentar "Pilihan     Anda Salah" jika pilihan tersebut  tidak ada pada program maka ia akan kembali ke menu) 

Kemudian compile project tersebut, Dengan pilihan compile atau dengan f9 . kemudian akan muncul outputan dibawah ini:
Jika kita menginput dengan angka 1, akan masuk kedalam pilihan vertikal. karena dalam vertikal maka  nilai X awal =  0, nilai  X akhir = 2, dan nilai Y tetap = 0. Lalu akan muncul hasil outputan .

kemudian hasil outputan pada program pilihan 1 adalah vertikal.

Jika kita menginput dengan angka 2, akan masuk kedalam pilihan horizontal. karena dalam horizontal X awalnya tetap dan Y tetapnya tidak bernilai, maka kita dapat menginput dalam pilihan X akhir. X akhir harus lebih besar dari X awal. seperti gambar berikut. 
kemudian hasil outputan pada program pilihan 2 adalah horizontal.


Jika kita menginput dengan angka 3, akan masuk kedalam pilihan diagonal. karena dalam diagonal X0 dan Y0 harus sama. XI dan Y1 harus bernilai sama. Dengan ketentuan XI dan Y1 lebih besar dengan X0 dan Y0. seperti gambar berikut. 
kemudian hasil outputan pada program pilihan  adalah diagonal.


Dan jika kita salah input dalam pilihan menu (misalkan inputan adalah 5) maka akan muncul seperti berikut.

Tidak ada komentar:

Posting Komentar