penjelasan titik,garis,segitiga dev c ++

20
TUGAS KULIAH OPEN GL (titik ,garis, dan segitiga) DOSEN PENGAMPU MATA KULIAH Muhammad Iqbal Habibie,S.Kom,MCP,MT Disusun Oleh: Nama : Muhamad Agus Muahrrom NPM : 38110155 Kelas : 2 DB 23 UNIVERSITAS GUNADARMA 2011

Upload: yuli-anto

Post on 21-Dec-2015

107 views

Category:

Documents


4 download

DESCRIPTION

Penjelasan titik,garis,segitiga dev c ++

TRANSCRIPT

TUGAS KULIAH OPEN GL

(titik ,garis, dan segitiga)

DOSEN PENGAMPU MATA KULIAHMuhammad Iqbal Habibie,S.Kom,MCP,MT

Disusun Oleh:

Nama : Muhamad Agus Muahrrom

NPM : 38110155

Kelas : 2 DB 23

UNIVERSITAS GUNADARMA2011

PENGENALAN OPENGL

OpenGL adalah suatu spefikasi grafik yang low-level yang menyediakan fungsi untuk pembuatan grafik primitif termasuk titik, garis, dan lingkaran. OpenGL digunakan untuk keperluan-keperluan pemrograman grfis.OpenGL bersifat Open-Source, multi-platform dan multi-language serta digunakan mendefinisikan suatu objek, baik objek 2 dimensi maupun objek 3 dimensi. OpenGL juga merupakan suatu antarmuka pemrograman aplikasi (application programming interface (API) yang tidak tergantung pada piranti dan platform yang digunakan, sehingga OpenGL dapat berjalan pada sistem operasi Windows, UNIX dan sistem operasi lainnya.

OpenGL pada awalnya didesain untuk digunakan pada bahasa pemrograman C/C++, namun dalam perkembangannya OpenGL dapat juga digunakan dalam bahasa pemrograman yang lain seperti Java, Tcl, Ada, Visual Basic, Delphi, maupun Fortran. Namun OpenGL di-package secara berbeda-beda sesuai dengan bahasa pemrograman yang digunakan. Oleh karena itu, package OpenGL tersebut dapat di-download pada situs http://www.opengl.org sesuai dengan bahasa pemrograman yang akan digunakan.

OpenGl melayani dua tujuan :•Untuk menyembunyikan kompleksitas dari interfacing dengan berbagai 3D accelerators,memamerkan oleh programmer dengan satu, seragam API. •Untuk menyembunyikan kemampuan yang berbeda dari hardware platform, oleh semua yangmemerlukan mendukung implementasi penuh fitur opengl set (menggunakan software emulation jika diperlukan).

SYNTAX OPENGL

Sintaks perintah OpenGL mengikuti aturan penulisan dari library dimana fungsi tersebut berasal, format penulisan fungsi OpenGL : <awalanlibrary><perintah><optional jumlah argumen><optional tipe argumen>

Semua perintah OpenGL menggunakan awalan gl diikuti dengan huruf kapital pada setiap kata membentuk nama perintah (sebagai contoh glClearColor).

Untuk mendefinisikan konstanta diawali dengan GL_, dengan menggunakan huruf kapital dan garis bawah untuk memisahkan kata (seperti GL_POLY_STIPPLE).

Terkadang beberapa huruf dan angka ditambahkan pada akhir perintah (seperti 3f pada glVertex3f). Dalam hal ini angka 3 menunjukkan berapa banyak argumen yang harus ada pada perintah tersebut dan akhiran huruf f menunjukkan jenis datanya yaitu floating. 

Fungsi asli dari OpenGL sendiri selalu diawali dengan gl yang terdapat pada library opengl32.dll dan file header gl.h. Sedangkan beberapa library yang telah ditulis untuk menyediakan fungsi-fungsi tambahan pada OpenGL adalah :

OpenGL Utility Library (GLU) yang didalamnya terdapat sejumlah rutin yang menggunakan level bawah dari perintah OpenGL. Rutin-rutin ini mempunyai awalan glu. Library ini digunakan sebagai bagian dari implementasi OpenGL.  Bentuk umum coding untuk pembuatan garis :

glBegin(GL_LINES);                                                                /* Ingin menggambar garis */  glVertex2(tipe_data)(koordinat X1, koordinat Y1);              /* menyatakan sejumlah titik */

glVertex2(tipe_data)(koordinat X2, koordinat Y2);             /* menyatakan sejumlah titik */

glEnd();                                                                                    /* Akhir menggambar titik */

Bentuk coding untuk pembuatan segitiga :            glBegin (GL_TRIANGLES);                                               /* Ingin menggambar segitiga * /  glColor3f (1.0f, 0.0f, 0.0f);   glVertex2f (0.0f, 1.0f);          /* menyatakan sejumlah titik * /

glColor3f (0.0f, 1.0f, 0.0f);   glVertex2f (0.87f, -0.5f);      /* menyatakan sejumlah titik */

glColor3f (0.0f, 0.0f, 1.0f);   glVertex2f (-0.87f, -0.5f);    /* menyatakan sejumlah titik */

glEnd ();                                                                             /*  Akhir menggambar titik  * /

Dibutuhkan 3 buah vertex, masing-masing koordinat vertex1,2, dan 3 akan saling terhubung membentuk segitiga

Bentuk coding untuk pembuatan kotak :            glBegin (GL_POLYGON);glColor3f (1.0f, 0.0f, 0.0f); glVertex2f (-0.5f, -0.5f);glColor3f (0.0f, 1.0f, 0.0f); glVertex2f (-0.5f, 0.5f);glColor3f (0.0f, 2.0f, 0.0f); glVertex2f (0.5f, 0.5f);glColor3f (0.0f, 0.0f, 3.0f); glVertex2f (0.5f, -0.5f);glEnd ();

MEMBUKA OPEN GL

Lalu, download package GLUT di link ini. Akan ada link di tabel download. Setelah di-klik, maka kita bisa men-save package di harddisk komputer.

Setelah package tersedia, buka Dev-C++ dan klik menu Tools - Package Manager

Lalu klik tombol Install yang berada di pojok kiri atas. Akan muncul window yang meminta file instalasi yang diinginkan. Pilihlah file Glut yang baru saja di-download tadi.

Lalu klik Open.

Setelah itu, akan muncul installation window. Tinggal klik Install dan tunggu hingga instalasi selesai. Lalu, klik Finish.

Package yang baru saja di-install akan muncul di window Package Manager dengan nama glut.

 

Sampai saat ini, proses instalasi Package Glut telah selesai.

Buat Project baru dengan cara klik menu File - New - Project.

Pilih project "Empty Project" dan beri nama pada kolom Name. Setelah itu klik OK. Lalu klik Save di tempat yang kamu inginkan.

Project baru telah terbentuk, tetapi belum memiliki file. Oleh karena itu, klik kanan pada Project dan pilih New File.

Akan muncul editor baru yang bernama default Untitled1. Di sinilah kita akan Coding.

MEMBUAT PROGRAM OPENGL SEDERHANA

a. Membuat Titik

Klik File --> New --> Project

Tuliskan nama project lalu pilih Empty Project setelah itu Save project Anda 

Klik Kanan pada project Anda lalu pilih New File.

masukkan kode berikut ini:

#include <gl/glut.h>

void Draw() {glClear(GL_COLOR_BUFFER_BIT);glColor3f(0.0, 0.0, 1.0);glBegin(GL_POINTS);

glVertex3f(0.2, 0.2, 0.0);glVertex3f(0.8, 0.2, 0.0);glVertex3f(0.2, 0.5, 0.0);glVertex3f(0.8, 0.5, 0.0);glVertex3f(0.2, 0.8, 0.0);glVertex3f(0.8, 0.8, 0.0);glEnd();glFlush();}

void Initialize() {glClearColor(0.0, 0.0, 0.0, 0.0);glMatrixMode(GL_PROJECTION);glLoadIdentity();glOrtho(0.0, 1.0, 0.0, 1.0, -1.0, 1.0);}

int main(int iArgc, char** cppArgv) {glutInit(&iArgc, cppArgv);glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);

glutInitWindowSize(600, 450);glutInitWindowPosition(520, 480);glutCreateWindow("TITIK");Initialize();glutDisplayFunc(Draw);glutMainLoop();return 0;}

Atau tampilan dalam DEV C++ sebagai berikut :

Sebelum di Compile, terlebih dahulu klik menu Project --> Project Options (Alt+P).

Klik Tab Parameter dan masukkan kode berikut ini agar proses compile berjalan lancar.-lglut32 -lglu32 -lopengl32 -lwinmm -lgdi32perhatikan gambar berikut ini.

Setelah itu, klik Menu Execute --> Compile and Run, simpan file terlebih dahulu. Hasilnya seperti berikut ini.

b. Membuat Garis

Klik File --> New --> Project

Tuliskan nama project lalu pilih Empty Project setelah itu Save project Anda 

Klik Kanan pada project Anda lalu pilih New File.

masukkan kode berikut ini:

#include <gl/glut.h>void Draw() {glClear(GL_COLOR_BUFFER_BIT);glColor3f(1.0, 1.0, 1.0);glBegin(GL_LINES);glVertex3f(0.2, 0.2, 0.0);glVertex3f(0.8, 0.2, 0.0);glVertex3f(0.2, 0.5, 0.0);glVertex3f(0.8, 0.5, 0.0);glVertex3f(0.2, 0.8, 0.0);glVertex3f(0.8, 0.8, 0.0);glEnd();glFlush();}void Initialize() {glClearColor(0.0, 0.0, 0.0, 0.0);glMatrixMode(GL_PROJECTION);glLoadIdentity();glOrtho(0.0, 1.0, 0.0, 1.0, -1.0, 1.0);}int main(int iArgc, char** cppArgv) {glutInit(&iArgc, cppArgv);glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);glutInitWindowSize(250, 250);glutInitWindowPosition(200, 200);glutCreateWindow("Garis By muhamad agus");Initialize();glutDisplayFunc(Draw);glutMainLoop();return 0;}

Atau tampilan dalam DEV C++ sebagai berikut :

Sebelum di Compile, terlebih dahulu klik menu Project --> Project Options (Alt+P).

Klik Tab Parameter dan masukkan kode berikut ini agar proses compile mendapat parameter linker.-lglut32 -lglu32 -lopengl32 -lwinmm -lgdi32perhatikan gambar berikut ini.

Setelah itu, klik Menu Execute --> Compile and Run, simpan file terlebih dahulu. Hasilnya seperti berikut ini.

a. Membuat Segitiga

Klik File --> New --> Project

Tuliskan nama project lalu pilih Empty Project setelah itu Save project Anda 

Klik Kanan pada project Anda lalu pilih New File.

masukkan kode berikut ini:

#include <gl/glut.h> void Draw() {glClear(GL_COLOR_BUFFER_BIT);

glColor3f(1.0, 1.0, 1.0);glBegin(GL_TRIANGLES);glVertex3f(0.2, 0.2, 0.0);glVertex3f(0.8, 0.2, 0.0);glVertex3f(0.2, 0.5, 0.0);glVertex3f(0.8, 0.5, 0.0);glVertex3f(0.2, 0.8, 0.0);glVertex3f(0.8, 0.8, 0.0);glEnd();glFlush();} void Initialize() {glClearColor(0.0, 0.0, 0.0, 0.0);glMatrixMode(GL_PROJECTION);glLoadIdentity();glOrtho(0.0, 1.0, 0.0, 1.0, -1.0, 1.0);} int main(int iArgc, char** cppArgv) {glutInit(&iArgc, cppArgv);glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);glutInitWindowSize(250, 250);glutInitWindowPosition(200, 200);glutCreateWindow("SEGITIGA");Initialize();glutDisplayFunc(Draw);glutMainLoop();return 0;

}Atau tampilan dalam DEV C++ sebagai berikut :

Sebelum di Compile, terlebih dahulu klik menu Project --> Project Options (Alt+P).

Klik Tab Parameter dan masukkan kode berikut ini agar proses compile mendapat parameter linker.-lglut32 -lglu32 -lopengl32 -lwinmm -lgdi32perhatikan gambar berikut ini.

Setelah itu, klik Menu Execute --> Compile and Run, simpan file terlebih dahulu. Hasilnya seperti berikut ini.