You are on page 1of 36

Tujuan

Mahasiswa bisa membuat (create) gambar menggunakan Open-GL dan bahasa C++. Mahasiswa bisa membuat gambar 2D dan gambar 3D. Mahasiswa dapat menerapkan prinsip-prinsip transformasi 2D dan 3D. Mahasiswa dapat menerapkan shading dan pencahayaan pada obyek gambar Mahasiswa dapat membuat morphing

TUJUAN PENGAJARAN GRAFIKA KOMPUTER


Mempelajari bagaimana membuat grafik

(gambar) yang tampak nyata dengan menggunakan program komputer. Mempelajari berbagai macam bentuk transformasi yang dapat menampilkan perubahan atau gerakan gambar Mempelajari bagaimana membuat elemen-elemen grafik dengan cara yang smart

MATERI GRAFIKA KOMPUTER


Pengenalan Grafika Komputer Primitive Drawing Grafik 2-Dimensi Grafik 3-Dimensi Morphing Shading dan Optical View Spline dan Bezier

Prasyarat Grafika Komputer


Matematika
Aljabar Matrik Teknik Pemrograman, khususnya yang

menggunakan bahasa C++ Struktur Data dan Algoritma

Perangkat Yang Digunakan


Komputer PC
Sistem Operasi Microsoft Windows atau Linux Bahasa C++: dalam hal ini menggunakan

Microsoft Visual C++ untuk sistem operasi MSWindows, dan g++ untuk sistem operasi Linux. Open-GL, sebagai library untuk grafika komputer.

Apa Grafika Komputer ?


Grafika komputer adalah gambar atau

grafik yang dihasilkan oleh komputer. Grafika komputer merupakan perangkat (tool) dasar yang digunakan untuk membuat gambar dengan komputer.

Dimana Grafik Yang Dibuat Dengan Komputer ini Digunakan


Seni, Entertainment dan Publishing, seperti

produksi film, animasi, special effect, game komputer, web browsing, buku, slide, dan majalah Image Processing Menampilkan proses yang sedang berjalan (monitoring) Menampilkan simulasi CAD Visualisasi analisa sains

Elemen-Elemen Dasar Grafika Komputer


Polylines

Text
Filled regions

Raster images

Polyline
Polyline adalah dereten garis-garis lurus yang berhubungan. Polyline ini adalah dasar dari setiap pembuatan grafik.

Text
Haettenschweile r Haettenschweil Time New Roman er Bold Time New RomanHaettenschweile bold Time New Roman italic r italic
Courier Courier bold Courier italic

Filled Region
Filled-Region adalah bagaimana memberi (memblok) warna atau pattern pada sebuah luasan

Raster Image
Raster image adalah penyajian gambar menggunakan matrik dari setiap sel gambar, dimana sebuah gambar didefinisikan sebagai array dari besarbesaran numeris.
11111 10001 10201 12021 20102

Beberapa Device Dalam Grafika Komputer


Line-Drawing Display Raster Display Indexed Color dan The Lookup

Table Other Raster Display Devices Hard-Copy Raster Devices

Tujuan
Mengenal dan mulai menulis program untuk

membuat gambar Mempelajari dasar-dasar pembuatan grafik dengan OpenGL Mengembangkan beberapa perangkat dasar untuk menggambar line, polyline dan polygon

OpenGL
OpenGL adalah library yang khusus menyediakan

perangkat-perangkat pembuatan grafik. OpenGL bekerja dalam bahasa C OpenGL dapat bekerja pada beberapa platform, seperti SGI, Unix, dan Windows

Cara Menginstall OpenGL pada Microsoft Windows


Ada 3 file penting dalam OpenGL yang akan

digunakan dalam sistem operasi MS-Windows, yaitu glut.h, glut32.lib dan glut32.dll Letakkan glut.h di direktori include pada Visual C (vc98/include) Letakkan glut32.lib di direktori lib pada Visual C (vc98/lib) Letakkan glut32.dll di direktori windows/system.

Struktur Dasar Program Grafik Dengan OpenGL


#include <glut.h> void userdraw() { static int tick=0; //program grafik ditulis disini } void display(void) { glClear(GL_COLOR_BUFFER_BIT); userdraw(); glutSwapBuffers(); }

Struktur Dasar Program Grafik Dengan OpenGL


int main(int argc, char **argv) { glutInit(&argc,argv); glutInitDisplayMode(GLUT_DOUBLE|GLUT_RGB); glutInitWindowPosition(100,100); glutInitWindowSize(640,480); glutCreateWindow(my first Open GL"); glClearColor(1.0,1.0,1.0,0.0); gluOrtho2D(0.,640.,-240.,240.); glutIdleFunc(display); glutDisplayFunc(display); glutMainLoop(); return 0; }

Struktur Dasar Program Grafik Dengan OpenGL


glutInitWindowPosition(100,100); glutInitWindowSize(640,480);
Membuat windows dengan ukuran (640,480) dengan titik kiri atas jendela diletakkan pada posisi (100,100) di layar komputer
glutCreateWindow(my first Open GL");

Memberi judul pada windows dengan my first Open GL

Struktur Dasar Program Grafik Dengan OpenGL


glClearColor(1.0,1.0,1.0,0.0);
Mendefinisikan warna dari windows yang dibuat dengan warna (1,1,1) yaitu warna putih

gluOrtho2D(0.,640.,-240.,240.);
Mendefinisikan besarnya sistem koordinat dengan range sumbu x adalah [0,640] dan range untuk sumbu y adalah [-240,240]

Sistem Koordinat
y Drawing Windows (0,480) (640,480)

(0,0)

x
(640,0)

Menggambar Titik
glVertex2i(x,y)
Untuk menggambar titik di posisi (x,y) dimana x dan y didefinisikan sebagai bilangan bulat (integer)

glVertex2f(x,y) glVertex2d(x,y)
Untuk menggambar titik di posisi (x,y) dimana x dan y didefinisikan sebagai bilangan pecahan (float/double)

Contoh Menggambar Titik


glBegin(GL_POINTS); glVertex2i(100,50); glVertex2i(100,130); glVertex2i(150,130); glEnd();

My first Drawing

Fungsi Untuk Membuat Titik


void drawDot(int x, int y) { glBegin(GL_POINTS); glVertex2i(x,y); glEnd(); } Fungsi ini digunakan bila x dan y didefinisikan sebagai integer

void drawDot(float x, float y) { glBegin(GL_POINTS); glVertex2f(x,y); glEnd(); }

Fungsi ini digunakan bila x dan y didefinisikan sebagai float

Latihan Menggambar Titik

Menggambar Garis dengan Open-GL

Menggambar Garis
Untuk membuat garis diperlukan library GL_LINES dengan menyatkan titik awal dan titik akhir dari garis.
My first drawing
glBegin(GL_LINES); glVertex2i(100,100); glVertex2i(200,150); glEnd(); (100,100)

(200,150)

Fungsi Untuk Menggambar Garis


void drawLine(int x1,int y1,int x2,int y2) { glBegin(GL_LINES); glVertex2i(x1,y1); glVertex2i(x2,y2); glEnd(); }

void drawLine(float x1,float y1,float x2,float y2) { glBegin(GL_LINES); glVertex2f(x1,y1); glVertex2f(x2,y2); glEnd(); }

Membuat PolyLine
Polyline adalah sekumpulan garis yang terhubung satu dengan yang lainnya hingga membentuk sebuah obyek gambar.
glBegin(GL_LINE_STRIP); glVertex2i(x1,y1); glVertex2i(x2,y2); glVertex2i(x3,y3); glVertex2i(xn,yn); glEnd();

Membuat PolyLine
glBegin(GL_LINE_STRIP); glVertex2i(100,100); glVertex2i(200,150); glVertex2i(300,50); glEnd();

My first drawing

(200,150)

(100,100)

(300,50)

Membuat Polygon
Polyline adalah sekumpulan garis yang terhubung satu dengan yang lainnya dan berbentuk kurva tertutup hingga membentuk sebuah obyek gambar.
glBegin(GL_LINE_LOOP); glVertex2i(x1,y1); glVertex2i(x2,y2); glVertex2i(x3,y3); glVertex2i(xn,yn); glEnd();

Membuat Polygon
glBegin(GL_LINE_LOOP); glVertex2i(100,100); glVertex2i(200,150); glVertex2i(300,50); glEnd();

My first drawing

(200,150)

(100,100)

(300,50)

Tugas 1: gambar rumah seperti gambar berikut: Membuat


My House

Tugas 2: gambar TV seperti gambar berikut: Membuat


My TV

You might also like