Bahan Ajar Komputer Grafik

download Bahan Ajar Komputer Grafik

of 25

Transcript of Bahan Ajar Komputer Grafik

PENGENALAN GRAFIKA KOMPUTER

DARMELI NASUTION, S.KOM.,M.Kom.

METERI KOMPUTER GRAFIK Pengenalan Grafika Komputer Primitif Drawing Grafik 2 Dimensi Transformasi 2 Dimensi Garfik 3 Dimensi Transformasi Object Grafik 3 Dimesi Shading Dan Oftical View Morphing

PengenalanGrafikaKomputer Grafika komputer menghasilkan suatu gambar Materinya berisi teknik-teknik menggambar Hasilnya gambar Image processing mengolah suatu gambar Materinya berisi teknik memperbaiki dan menyajikan informasi dari gambar Hasilnya bisa gambar atau informasi

APLIKASI GRAFIK DLM DUNIA USAHA Seni, Intertaiment, Publishing(Percetakan), Produksi Film, Game Komputer, Web Browsing, Buku, Slide, Majalah dll. Image Processing atau pengolahan Citra Digital dapat digunakan dalam coding(pemindahan data citra menjadi data vektor) yang banyak digunakan dalam keperluan GIS. CAD (Computer Aided Design) satu program yang digunakan dalam dunia teknik. Biasanya software yang sering digunakan adalah AUTOCAD dimana fungsinya sebagai rancangan atau desain pola atau desain layout.

TUJUAN Mengenal dan mulai menulis program untuk membuat gambar Mampu Membuat Gambar 2D dan 3D Mempelajari dasar-dasar pembuatan grafik dengan OpenGL Mengembangkan beberapa perangkat dasar untuk menggambar line, polyline dan polygon.

PRA SYARAT Matematika Aljabar Matriks Teknik Pemrograman Yaitu C++ Struktur Data Dan Algoritma Dan Pemrograman

PERANGKAT YG DIGUNAKAN Komputer PC Sistem Operasi Windows atau Linux Bahasa C++, g++ OpenGL Sebagai Library Untuk Grafik Komputer.

ELEMEN-ELEMEN GRAFIK

POLYLINES TEXT REGION RASTER IMAGE

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 MSWindows, yaitu glut.h, glut32.lib dan glut32.dll Letakkan glut.h di direktori include pada Visual C (vc98/include/GL) Letakkan glut32.lib di direktori lib pada Visual C (vc98/lib) Letakkan glut32.dll di direktori windows/system.

#include

void userdraw() { static int tick=0; void drawDot(int x, int y) ; glBegin(GL_POINTS); glVertex2i(100,50); glVertex2i(100,130); glVertex2i(150,130); glEnd(); }void display(void) { //clear screen glClear(GL_COLOR_BUFFER_BIT); userdraw(); glutSwapBuffers(); }

Struktur Dasar Program Grafik Dengan OpenGL

int main(int argc, char **argv) { glutInit(&argc,argv);//Inisialisasi Toolkit glutInitDisplayMode(GLUT_DOUBLE|GLUT_RGB); glutInitWindowPosition(100,100); glutInitWindowSize(640,480); glutCreateWindow(My First OpenGL"); 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 OpenGLglutInitWindowPosition(100,100); glutInitWindowSize(640,480); Membuat windows dengan ukuran (640,480) dengan titik kiri atas jendela diletakkan pada posisi (100,100) di layar komputerglutCreateWindow(Drawing By Achmad Basuki");

Memberi judul pada windows dengan Drawing By Achmad Basuki

Struktur Dasar Program Grafik Dengan OpenGLglClearColor(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 Koordinaty Drawing Windows (0,480)

(640,480)

(0,0)

(640,0)

x

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 TitikglBegin(GL_POINTS); glVertex2i(100,50); glVertex2i(100,130); glVertex2i(150,130); glEnd();

My first Drawing

Fungsi Untuk Membuat Titikvoid drawDot(int x, int y) { glBegin(GL_POINTS); glVertex2i(x,y); glEnd(); }void drawDot(float x, float y)

Fungsi ini digunakan bila x dan y didefinisikan sebagai integerFungsi ini digunakan bila x dan y didefinisikan sebagai float

{

}

glBegin(GL_POINTS); glVertex2f(x,y); glEnd();

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

(200,150)(100,100)

Fungsi Untuk Menggambar Garisvoid 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 PolyLinePolyline adalah sekumpulan garis yang terhubung satu dengan yang lainnya hingga membentuk sebuah obyek gambar.glBegin(GL_LINE_STRIP); glBegin(GL_LINE_LOOP); glVertex2i(x1,y1); glVertex2i(x1,y1); glVertex2i(x2,y2); glVertex2i(x2,y2); glVertex2i(x3,y3); glVertex2i(x3,y3); glVertex2i(xn,yn); glVertex2i(xn,yn); glEnd(); glEnd();

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

My first drawing

(200,150) (100,100) (300,50)

Membuat PolygonPolyline 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 PolygonglBegin(GL_LINE_LOOP); glVertex2i(100,100); glVertex2i(200,150); glVertex2i(300,50); glEnd();

My first drawing

(200,150) (100,100) (300,50)

PewarnaanglColor3f(red,green,blue); Red,green,blue bervariasi diantara 0. S/d 1. glColor3f(0.,0.,0.);//black glColor3f(0.,0.,1.);//blue glColor3f(0.,1.,0.);//green glColor3f(0.,1.,1.);//cyan glColor3f(1.,0.,0.);//red glColor3f(1.,0.,1.);//magenta glColor3f(1.,1.,0.);//yellow glColor3f(1.,1.,1.);//white