91202872 Bahan Ajar Komputer Grafik

Embed Size (px)

DESCRIPTION

Teknik informatika

Citation preview

  • PENGENALAN GRAFIKAKOMPUTER

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

  • METERI KOMPUTER GRAFIKPengenalan Grafika KomputerPrimitif DrawingGrafik 2 DimensiTransformasi 2 DimensiGarfik 3 DimensiTransformasi Object Grafik 3 DimesiShading Dan Oftical ViewMorphing

  • PengenalanGrafikaKomputer

    Grafika komputer menghasilkan suatu gambarMaterinya berisi teknik-teknik menggambarHasilnya gambarImage processing mengolah suatu gambarMaterinya berisi teknik memperbaiki dan menyajikan informasi dari gambarHasilnya bisa gambar atau informasi

  • APLIKASI GRAFIK DLM DUNIA USAHASeni, 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.

  • T U J U A NMengenal dan mulai menulis program untuk membuat gambarMampu Membuat Gambar 2D dan 3DMempelajari dasar-dasar pembuatan grafik dengan OpenGLMengembangkan beberapa perangkat dasar untuk menggambar line, polyline dan polygon.

  • PRA SYARAT MatematikaAljabar MatriksTeknik Pemrograman Yaitu C++Struktur Data Dan Algoritma Dan Pemrograman

  • PERANGKAT YG DIGUNAKANKomputer PCSistem Operasi Windows atau LinuxBahasa C++, g++OpenGL Sebagai Library Untuk Grafik Komputer.

  • ELEMEN-ELEMEN GRAFIK

    POLYLINESTEXTREGIONRASTER IMAGE

  • OpenGLOpenGL adalah library yang khusus menyediakan perangkat-perangkat pembuatan grafik.OpenGL bekerja dalam bahasa COpenGL dapat bekerja pada beberapa platform, seperti SGI, Unix, dan Windows

  • Cara Menginstall OpenGL pada Microsoft WindowsAda 3 file penting dalam OpenGL yang akan digunakan dalam sistem operasi MS-Windows, yaitu glut.h, glut32.lib dan glut32.dllLetakkan 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 screenglClear(GL_COLOR_BUFFER_BIT);userdraw();glutSwapBuffers();}

  • Struktur Dasar Program Grafik Dengan OpenGLint main(int argc, char **argv){glutInit(&argc,argv);//Inisialisasi ToolkitglutInitDisplayMode(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 putihgluOrtho2D(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

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

  • Contoh Menggambar TitikglBegin(GL_POINTS);glVertex2i(100,50);glVertex2i(100,130);glVertex2i(150,130);glEnd();

  • Fungsi Untuk Membuat Titikvoid drawDot(int x, int y){glBegin(GL_POINTS);glVertex2i(x,y);glEnd();}void drawDot(float x, float y){glBegin(GL_POINTS);glVertex2f(x,y);glEnd();}Fungsi ini digunakan bila x dan y didefinisikan sebagai integerFungsi ini digunakan bila x dan y didefinisikan sebagai float

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

  • Fungsi UntukMenggambar 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);glVertex2i(x1,y1);glVertex2i(x2,y2);glVertex2i(x3,y3);glVertex2i(xn,yn);glEnd();glBegin(GL_LINE_LOOP);glVertex2i(x1,y1);glVertex2i(x2,y2);glVertex2i(x3,y3);glVertex2i(xn,yn);glEnd();

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

  • 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();

  • PewarnaanglColor3f(red,green,blue);Red,green,blue bervariasi diantara 0. S/d 1.glColor3f(0.,0.,0.);//blackglColor3f(0.,0.,1.);//blue glColor3f(0.,1.,0.);//greenglColor3f(0.,1.,1.);//cyan glColor3f(1.,0.,0.);//red glColor3f(1.,0.,1.);//magenta glColor3f(1.,1.,0.);//yellowglColor3f(1.,1.,1.);//white