laporan praktikum by dian widya utami

Upload: dianwidyautami

Post on 14-Oct-2015

20 views

Category:

Documents


0 download

DESCRIPTION

laporan

TRANSCRIPT

KelasTI 4 Sore BLAPORAN PRAKTIKUMKOMPUTER APLIKASI

NamaPraktikanNomorMahasiswaTanggalKumpulTandatangan

Pratikan

DIAN WIDYA UTAMI1214370162

NamaPenilaiTanggalKoreksiNilaiTandatangan

Dosen

Indri Sulistianingsih, S.Kom

Universitas Pembangunan Panca Budi FakultasTeknikJurusan Sistem KomputerMedan 2014

KATA PENGANTARDengan mengucapkan puji dan syukur kehadirat Allah SWT, penulis panjatkan atas segala rahmat, hidayah, dan ridho-Nya, atas terselesaikannya proposal ini dengan judul: LAPORAN PRAKTIKUM yang merupakan salah satu tugasakhir matakuliahMetodePenelitian semester 4.Penulis menyadari bahwa, dalam laporan ini tak terlepas atas bantuan banyak pihak. Oleh karena itu penulis ingin mengucapkan banyak terima kasih kepada IbuIndri SulistianingsihselakuDosen Mata KuliahKomputer Grafik. Dalam penulisan proposal initentunya masih jauh dari kesempurnaan, karena masih banyak kesalahan dan kekurangan yang ada. Oleh karena itu penulis mengharapkan kritik serta saran yang membangun dimasa yan akan datang.Akhir kata, penulis mohon dibukakan pintu maaf yang sebesar-besarnya, apabila ada kesalahan atau kekurangan yang penulis lakukan. Dan penulis mengharapkan LAPORAN PRAKTIKUM ini dapat bermanfaat bagi siapa saja yang menggunakannya.

Medan, 07 Juni 2014

DIAN WIDYA UTAMI1214370162

DAFTAR ISIHALAMAN JUDUL KATA PENGANTAR iDAFTAR ISI iiBAB I : PENDAHULUAN 11.1 LatarBelakang 11.2 Tujuan 1BAB II : LANDASAN TEORI 22.1 Teori Dasar Grafika Komputer 22.1.1 Grafika Komputer 22.1.2 OpenGL22.1.3Polyline dan Polygon32.1.4 2 Dimensi dan 3 Dimensi 32.1.5 Pewarnaan 3BAB III : LAPORAN PRATIKUM 43.1 Primitive Drawing 43.2Latihan Fungsi dari 2 Dimensi93.3Latihan Fungsi dari 3 Dimensi13

BAB IV : LAPORAN ANALISIS 214.1AnalisisFungsi 2 Dimensi214.2AnalisisFungsi 3 Dimensi21

Kesimpulandan Saran 23Penutup24

DAFTAR PUSTAKA 25

BAB IPENDAHULUAN

1.1 LATAR BELAKANGGrafikakomputerdigunakanuntukmenunjangberbagaibidangdenganteknologigrafikaberbasiskomputer.Penggunaangrafikakomputertelah lama digunakandalambeberapamacamaplikasi, diantaranyapendidikan, kedokteran, fisika, matematika, multimedia, dan lain-lain.Padasaatinigrafikakomputersudahdigunakanpadabidangsains, engineering, kedokteran, bisnis, industri, pemerintahan, seni, hiburan, iklan, pendidikan, dan lain-lain. Olehkarenaitu, sudahsemakinbanyak pula bahasapemrograman yang dilengkapidengan tools/library pembuatangrafik Salah satu tools/library pembuatanaplikasigrafikadalah OpenGL (Open Graphics Library).OpenGL(Open Graphics Library) adalahsuatuspefikasigrafik yang low-level yang menyediakanfungsiuntukpembuatangrafikprimitiftermasuktitik, garis, danlingkaran. OpenGL digunakanuntukmendefinisikansuatuobjek, baikobjek 2 dimensimaupunobjek 3 dimensi.

1.2 TUJUAN PRAKTIKUM Menyelesaikan Ujian Akhir Semester Mata Kuliah KOMPUTER GRAFIK Mampu membuat gambar 2D dan 3D Mempelajari dasar-dasar pembuatan grafik dengan Open GL Mengembangkan beberapa perangkat dasar untuk menggambar line, polyline, dan polygon. Mampu mengimplementasikan fungsi transformasi 3D

BAB IILANDASAN TEORITENTANG KOMPUTER GRAFIK2.1 Teori Dasar Grafika Komputer2.1.1Grafika KomputerGrafika komputer adalah bidang dari komputasi visual dimana penggunaan komputer akan menghasilkan gambar visual secara sintetis dan mengintegrasikan atau mengubah informasi mengenai ruang dan visual yang dicontohkan dari dunia nyata.Grafis (graphic) adalah presentasi visual dari sebuah image yang bertujuan memberi tanda, informasi, ilustrasi atau sekedar hiburan. Image (citra atau gambaran dapat diartikan sebagai kesan visual yang ditangkap oleh indera penglihatan ketika mengamati suatu objek. Manusia mentransformasi image ke dalam berbagai jenis media seperti kertas, kanvas, layar komputer atau jenis lainnya sehingga menghasilkan presentasi dari image itu. Grafis komputer membutuhkan dukungan piranti grafis. Piranti grafis adalah segala peripheral dan perangkat lunak komputer yang bisa menjadikan komputer memiliki kemampuan untuk menampilkan serta memanipulasi image digital.Bagian dari grafika komputer meliputi:- Geometri: mempelajari cara menggambarkan permukaan bidang- Animasi: mempelajari cara menggambarkan dan memanipulasi gerakan- Rendering: mempelajari algoritma untuk menampilkan efek cahaya- Citra (Imaging): mempelajari cara pengambilan dan penyuntingan gambar.Teknik-teknik yang dipelajari dalam grafika komputer adalah teknik-teknik bagaimana membuat atau menciptakan gambar dengan menggunakan komputer. Ada beberapa program, dari yang sederhana sampai program yang sangat kompleks, yang dapat digunakan untuk membuat gambar komputer, antara lain Paint, Microsoft Photo Editor, Adobe Photoshop, Maya, Autocad, 3D Space Max, dan lain-lain.

2.1.2OpenGLOpenGL (Open Graphics Library) adalah suatu spefikasi grafik yang low-level yang menyediakan fungsi untuk mempermudah pekerjaan atau untuk keperluan keperluan pemrograman grafis (Graphics Programming / GP), termasuk grafik primitif (titik, garis, dan lingkaran). OpenGL(Open Graphic Library) adalah sebuah library terdiri dari berbagai macam fungsi dan biasanya digunakan untuk menggambar sebuah objek 2D ata 3D. OpenGL bersifatOpen-Source,multi-platformdanmulti-language.Ada tiga file yang penting dalam OpenGL yang akan digunakan dalam operasi MS-Windows, yaitu glut.h, glut32.lib dan glut.dll Letakkan glut 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/system2.1.3 Polyline dan PolygonePolyline adalahsekumpulangaris yang terhubungsatudengan yang lainnyahinggamembentuksebuahobyekgambar.Polygon adalahsekumpulangaris yang terhubungsatudengan yang lainnyadanberbentukkurvatertutuphinggamembentuksebuahobyekgambar.2.1.4 Dimensi dan 3 DimensiGrafikkomputer 2dimensibiasadisebutdengan 2D ataubidangadalahbentukdaribenda yang memilikipanjangdanlebar.Grafik 2 Dimensimerupakanteknikpenggambaran yang berpatokanpadatitikkoordinatsumbu x (datar) dansumbu y (tegak). Agar dapattampildengansempurna, gambar yang akanditampilkandenganteknikiniharusmemilikinilaikoordinat x dan y minimum 0 danmaksimumsebesarresolusi yang digunakan.Grafikkomputer 3dimensibiasadisebut 3D atauadalahbentukdaribenda yang memilikipanjang, lebar, dantinggi.Grafik 3 Dimensimerupakanteknikpenggambaranygberpatokanpadatitikkoordinatsumbu x(datar), sumbu y(tegak), dansumbu z(miring).Representasidari data geometrik 3 dimensisebagaihasildaripemrosesandanpemberianefekcahayaterhadapgrafikakomputer 2D.2.1.5 PEWARNAAN glColor3f(red,green,blue); Red,green,bluebervariasidiantara 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

BAB IIIHASIL PERCOBAAN / PRAKTIKUM3.1 Primitive Drawinga. Menggambar TitikMenggambartitikmenggunakanperintah GL_POINTS dengan glVertex3f(x, y, z), dimanakordinat x sumbu horizontal, y sumbuvertikaldankordinat z kearahkita.Koordinatdimulaidarikiribawah. Struktur program membuat sebuah titik :#include void Draw() {glClear(GL_COLOR_BUFFER_BIT);glColor3f(1.0, 1.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(250, 250);glutInitWindowPosition(200, 200);glutCreateWindow(Point);Initialize();glutDisplayFunc(Draw);glutMainLoop();return 0;}

hasilnya akan tampak seperti dibawah ini : terdiri dari 6 titik berwarna putih

b. Menggambar GarisGaris merupakan persamaan matematika yang disusun oleh sekumpulan titik.Suatu titik merupakan penyusun dari garis jika koordinat titik tersebut memenuhi persamaan garis y = mx + c. Garis memiliki atribut yang terdiri dari warna, tebal dan jenis dari garis tersebut (gambar 2.4). Garis juga memiliki property yang terdiri dari koordinatdari titik titik ujung garis tersebut (x1,y1) dan (x2,y2).Contoh Script#include void userdraw(){static int tick=0;void drawline(int x1,int y1, int x2, int y2);glBegin (GL_LINES);glVertex2i(50,300);glVertex2i(300,40);

glEnd();}void display(void){//clear screenglClear(GL_COLOR_BUFFER_BIT);userdraw();glutSwapBuffers();}int main(int argc, char **argv){glutInit(&argc,argv);//Inisialisasi ToolkitglutInitDisplayMode(GLUT_DOUBLE|GLUT_RGB);glutInitWindowPosition(100,100);glutInitWindowSize(500,400);glutCreateWindow("garis. dian widya utami");glClearColor(0.1,0.0,0.1,0.0);gluOrtho2D(0.,350.,-5.,400.);glutIdleFunc(display);glutDisplayFunc(display);glutMainLoop();return 0;}Hasil nya :

c. PolygonPoligon merupakan bidang tertutup yang dibentuk oleh minimal 3 simpul (titik sudut atau vertices) yang terhubung oleh garis (sisi atau edge). Garis garis tersebut tidak saling memotong. Contoh : segitiga, segi lima, segi delapan, dsb.Contoh#include void userdraw(){static int tick=0;void drawline(int x1,int y1, int x2, int y2);glBegin (GL_LINES);glVertex2i(50,50);glVertex2i(150,50);glVertex2i(150,50);glVertex2i(200,200);glVertex2i(200,200);glVertex2i(100,250);glVertex2i(100,250);glVertex2i(10,200);glVertex2i(10,200);glVertex2i(50,50);glEnd();}void display(void){//clear screenglClear(GL_COLOR_BUFFER_BIT);userdraw();glutSwapBuffers();}int main(int argc, char **argv){glutInit(&argc,argv);//Inisialisasi ToolkitglutInitDisplayMode(GLUT_DOUBLE|GLUT_RGB);glutInitWindowPosition(100,100);glutInitWindowSize(500,400);glutCreateWindow("poligon dian widya utami");glClearColor(0.1,0.0,0.1,0.0);gluOrtho2D(0.,350.,-5.,400.);glutIdleFunc(display);glutDisplayFunc(display);glutMainLoop();return 0;}Hasilnya adalah :

3.2 Latihan Fungsi dari 2DSistem koordinat digunakan untuk membedakan posisi atau lokasi suatu titik. Sistem koordinat yang sering digunakan adalah sistem koordinat cartesian dua dimensi seperti yang digambarkan pada gambar 2.1. Dalam sistem koordinat cartesian dua dimensi digunakan 2 besaran (x,y). Sumbu x digunakan untuk memproyeksikan panjang dan sumbu y untuk tinggi.Scrift :#include typedefstruct{intx,y;}point2D_t;typedefstruct{floatr,g,b;}color_t;voidsetColor(color_t col){glColor3f(col.r, col.g, col.b);}voiddrawPolygon(point2D_t pnt[],int n){int i;glBegin(GL_LINE_LOOP);for (i=0; i