laporan praktikum by dian widya utami

Upload: dianwidyautami

Post on 14-Oct-2015

48 views

Category:

Documents


0 download

DESCRIPTION

laporan

TRANSCRIPT

  • 5/24/2018 LAPORAN PRAKTIKUM by Dian Widya Utami

    1/28

    1

    LAPORAN PRAKTIKUM

    KOMPUTER APLIKASI

    Nama

    Praktikan

    Nomor

    MahasiswaTanggal Kumpul

    Tanda tangan

    Pratikan

    DIAN WIDYA

    UTAMI

    1214370162

    Nama PenilaiTanggal

    KoreksiNilai

    Tanda tangan

    Dosen

    Indri Sulistianingsih, S.Kom

    Universitas Pembangunan Panca Budi

    Fakultas Teknik

    Jurusan Sistem Komputer

    Medan

    2014

    Kelas

    TI 4 Sore B

  • 5/24/2018 LAPORAN PRAKTIKUM by Dian Widya Utami

    2/28

    2

    KATA PENGANTAR

    Dengan mengucapkan puji dan syukur kehadirat Allah SWT, penulis panjatkan atas

    segala rahmat, hidayah, dan ridho-Nya, atas terselesaikannya proposal ini dengan judul:

    LAPORAN PRAKTIKUMyang merupakan salah satu tugas akhir mata kuliah Metode

    Penelitian semester 4.

    Penulis menyadari bahwa, dalam laporan ini tak terlepas atas bantuan banyak pihak.

    Oleh karena itu penulis ingin mengucapkan banyak terima kasih kepada Ibu Indri

    Sulistianingsih selaku Dosen Mata Kuliah Komputer Grafik. Dalam penulisan proposal ini

    tentunya 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

    PRAKTIKUMini dapat bermanfaat bagi siapa saja yang menggunakannya.

    Medan, 07 Juni 2014

    DIAN WIDYA UTAMI

  • 5/24/2018 LAPORAN PRAKTIKUM by Dian Widya Utami

    3/28

    3

    DAFTAR ISI

    HALAMAN JUDUL ............................................................................................................

    KATA PENGANTAR .......................................................................................................... i

    DAFTAR ISI ......................................................................................................................... ii

    BAB I : PENDAHULUAN ................................................................................................... 1

    1.1Latar Belakang ....................................................................................................... 11.2Tujuan .................................................................................................................... 1

    BAB II : LANDASAN TEORI ............................................................................................. 2

    2.1 Teori Dasar Grafika Komputer .............................................................................. 2

    2.1.1 Grafika Komputer .......................................................................................... 2

    2.1.2 OpenGL ......................................................................................................... 2

    2.1.3 Polyline dan Polygon .................................................................................... 3

    2.1.4 2 Dimensi dan 3 Dimensi ............................................................................... 3

    2.1.5 Pewarnaan ...................................................................................................... 3

    BAB III : LAPORAN PRATIKUM ..................................................................................... 4

    3.1 Primitive Drawing .................................................................................................. 4

    3.2 Latihan Fungsi dari 2 Dimensi ............................................................................... 9

    3.3 Latihan Fungsi dari 3 Dimensi ............................................................................... 13

    BAB IV : LAPORAN ANALISIS ........................................................................................ 21

    4.1 Analisis Fungsi 2 Dimensi ..................................................................................... 21

    4.2 Analisis Fungsi 3 Dimensi ..................................................................................... 21

    Kesimpulan dan Saran .......................................................................................................... 23

    Penutup ................................................................................................................................ 24

    DAFTAR PUSTAKA ........................................................................................................... 25

  • 5/24/2018 LAPORAN PRAKTIKUM by Dian Widya Utami

    4/28

    4

    BAB I

    PENDAHULUAN

    1.1LATAR BELAKANGPerkembangan grafika komputer menuntut para pengembang sistem aplikasi grafika

    komputer untuk dapat mengembangkan suatu informasi yang dilengkapi dengan visualisasi

    dan animasi, agar dapat lebih mudah dipahami oleh pihak yang menggunakan sistem tersebut.

    Grafika komputer telah menunjukkan kemajuan yang pesat dalam pengembangan berbagai

    aplikasi untuk menghasilkan gambar. Grafika komputer digunakan untuk menunjang

    berbagai bidang dengan teknologi grafika berbasis komputer. Penggunaan grafika komputer

    telah lama digunakan dalam beberapa macam aplikasi, diantaranya pendidikan, kedokteran,

    fisika, matematika, multimedia, dan lain-lain. Pada saat ini grafika komputer sudah

    digunakan pada bidang sains, engineering, kedokteran, bisnis, industri, pemerintahan, seni,

    hiburan, iklan, pendidikan, dan lain-lain. Oleh karena itu, sudah semakin banyak pula bahasa

    pemrograman yang dilengkapi dengan tools/library pembuatan grafik Salah satu tools/library

    pembuatan aplikasi grafik adalah OpenGL (Open Graphics Library). OpenGL(Open Graphics

    Library) adalah suatu spefikasi grafik yang low-level yang menyediakan fungsi untuk

    pembuatan grafik primitif termasuk titik, garis, dan lingkaran. OpenGL digunakan untuk

    mendefinisikan suatu objek, baik objek 2 dimensi maupun objek 3 dimensi.

    1.2TUJUAN 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

  • 5/24/2018 LAPORAN PRAKTIKUM by Dian Widya Utami

    5/28

    5

    BAB II

    LANDASAN TEORI

    TENTANG KOMPUTER GRAFIK

    2.1 Teori Dasar Grafika Komputer

    2.1.1 Grafika Komputer

    Grafika 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.2 OpenGL

    OpenGL (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

  • 5/24/2018 LAPORAN PRAKTIKUM by Dian Widya Utami

    6/28

    6

    macam fungsi dan biasanya digunakan untuk menggambar sebuah objek 2D ata 3D. OpenGL

    bersifat Open-Source, multi-platformdan multi-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/system

    2.1.3 Polyline dan Polygone

    Polyline adalah sekumpulan garis yang terhubung satu dengan yang lainnya hingga

    membentuk sebuah obyek gambar.

    Polygon adalah sekumpulan garis yang terhubung satu dengan yang lainnya dan

    berbentuk kurva tertutup hingga membentuk sebuah obyek gambar.

    2.1.4 Dimensi dan 3 Dimensi

    Grafik komputer 2dimensi biasa disebut dengan 2D atau bidang adalah bentuk dari

    benda yang memiliki panjang dan lebar. Grafik 2 Dimensi merupakan teknik penggambaran

    yang berpatokan pada titik koordinat sumbu x (datar) dan sumbu y (tegak). Agar dapat tampil

    dengan sempurna, gambar yang akan ditampilkan dengan teknik ini harus memiliki nilai

    koordinat x dan y minimum 0 dan maksimum sebesar resolusi yang digunakan.

    Grafik komputer 3dimensi biasa disebut 3D atau adalah bentuk dari benda yang

    memiliki panjang, lebar, dan tinggi. Grafik 3 Dimensi merupakan teknik penggambaran yg

    berpatokan pada titik koordinat sumbu x(datar), sumbu y(tegak), dan sumbu

    z(miring).Representasi dari data geometrik 3 dimensi sebagai hasil dari pemrosesan dan

    pemberian efek cahaya terhadap grafika komputer 2D.

    2.1.5 PEWARNAAN

    glColor3f(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

  • 5/24/2018 LAPORAN PRAKTIKUM by Dian Widya Utami

    7/28

    7

    BAB III

    HASIL PERCOBAAN / PRAKTIKUM

    3.1 Primitive Drawing

    a. Menggambar Titik

    Menggambar titik menggunakan perintah GL_POINTS dengan glVertex3f(x, y, z),

    dimana kordinat x sumbu horizontal, y sumbu vertikal dan kordinat z kearah kita. Koordinat

    dimulai dari kiri bawah. 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;

    }

  • 5/24/2018 LAPORAN PRAKTIKUM by Dian Widya Utami

    8/28

    8

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

    b. Menggambar Garis

    Garis 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 memilikiproperty yang terdiri dari koordinat

    dari titiktitik 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)

    {

  • 5/24/2018 LAPORAN PRAKTIKUM by Dian Widya Utami

    9/28

    9

    //clear screen

    glClear(GL_COLOR_BUFFER_BIT);

    userdraw();

    glutSwapBuffers();

    }

    int main(int argc, char **argv)

    {

    glutInit(&argc,argv);//Inisialisasi Toolkit

    glutInitDisplayMode(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 :

  • 5/24/2018 LAPORAN PRAKTIKUM by Dian Widya Utami

    10/28

    10

    c. Polygon

    Poligon merupakan bidang tertutup yang dibentuk oleh minimal 3 simpul (titik sudut

    atau vertices) yang terhubung oleh garis (sisi atau edge). Garisgaris 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 screen

    glClear(GL_COLOR_BUFFER_BIT);

    userdraw();

    glutSwapBuffers();

    }

  • 5/24/2018 LAPORAN PRAKTIKUM by Dian Widya Utami

    11/28

    11

    int main(int argc, char **argv)

    {

    glutInit(&argc,argv);//Inisialisasi Toolkit

    glutInitDisplayMode(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 :

  • 5/24/2018 LAPORAN PRAKTIKUM by Dian Widya Utami

    12/28

    12

    3.2 Latihan Fungsi dari 2D

    Sistem 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

    typedef struct

    {

    int x,y;

    }point2D_t;

    typedef struct

    {

    float r,g,b;

    }color_t;

    void setColor(color_t col)

    {

    glColor3f(col.r, col.g, col.b);

    }

    void drawPolygon(point2D_t pnt[],int n)

    {

    int i;

    glBegin(GL_LINE_LOOP);

    for (i=0; i

  • 5/24/2018 LAPORAN PRAKTIKUM by Dian Widya Utami

    13/28

    13

    }

    glEnd();

    }

    void userdraw(void)

    {

    point2D_t

    petakdasar[4]={{0,0},{0,80},{350,80},{350,0}};

    color_t hijau ={0,1,0};

    fillpolygon(petakdasar, 4, hijau);

    drawPolygon(petakdasar,4);

    point2D_t

    tangga[4]={{10,10},{50,50},{310,50},{340,10}};

    color_t merah ={1,0,0};

    fillpolygon(tangga, 4, merah);

    drawPolygon(tangga,4);

    point2D_t

    petaktengah1[4]={{110,50},{100,70},{260,70},{250,50}};

    color_t kuning ={1,1,0};

    fillpolygon(petaktengah1, 4, kuning);

    drawPolygon(petaktengah1,4);

    point2D_t

    petaktengah2[4]={{100,70},{80,90},{280,90},{260,70}};

    color_t kuning2 ={1,1,0};

    fillpolygon(petaktengah2, 4, kuning2);

    drawPolygon(petaktengah2,4);

    point2D_t

    petaktengah3[4]={{80,90},{70,110},{290,110},{280,90}};

    color_t kuning3 ={1,1,0};

    fillpolygon(petaktengah3, 4, kuning3);drawPolygon(petaktengah3,4);

    point2D_t

    batang2[4]={{160,510},{160,530},{200,530},{200,510}};

    color_t hitam4 ={0,0,0};

    fillpolygon(batang2, 4, hitam4);

    drawPolygon(batang2,4);

    point2D_t

    batang[4]={{150,120},{170,520},{190,520},{210,120}};

    color_t putih2 ={1,1,1};

  • 5/24/2018 LAPORAN PRAKTIKUM by Dian Widya Utami

    14/28

    14

    fillpolygon(batang, 4, putih2);

    drawPolygon(batang,4);

    point2D_t

    petaktengah4[4]={{70,110},{70,120},{290,120},{290,110}};

    color_t hitam3 ={0,0,0};

    fillpolygon(petaktengah4, 4, hitam3);

    drawPolygon(petaktengah4,4);

    point2D_t

    segitiga[3]={{170,530},{180,580},{190,530}};

    color_t kuning4 ={1,1,0};

    fillpolygon(segitiga, 3, kuning4);

    drawPolygon(segitiga,3);

    point2D_t

    bayangbatang[4]={{160,530},{160,535},{200,535},{200,530}};

    color_t putih3 ={1,1,1};

    fillpolygon(bayangbatang, 4, putih3);

    drawPolygon(bayangbatang,4);

    point2D_t

    bayangbatang2[4]={{200,510},{200,535},{203,535},{203,510}};

    color_t putih4 ={1,1,1};

    fillpolygon(bayangbatang2, 4, putih4);

    drawPolygon(bayangbatang2,4);

    point2D_t

    tanggatgh1[4]={{140,10},{140,50},{150,50},{150,10}};

    color_t hitam ={0,0,0};

    fillpolygon(tanggatgh1, 4, hitam);

    drawPolygon(tanggatgh1,4);

    point2D_t

    tanggatgh2[4]={{210,10},{210,50},{220,50},{220,10}};color_t hitam2 ={0,0,0};

    fillpolygon(tanggatgh2, 4, hitam2);

    drawPolygon(tanggatgh2,4);

    point2D_t

    tangga2[4]={{10,10},{50,50},{310,50},{340,10}};

    drawPolygon(tangga2,4);

    point2D_t

    petaktengah11[4]={{110,50},{100,70},{260,70},{250,50}};

    drawPolygon(petaktengah11,4);

  • 5/24/2018 LAPORAN PRAKTIKUM by Dian Widya Utami

    15/28

    15

    point2D_t

    petaktengah22[4]={{100,70},{80,90},{280,90},{260,70}};

    drawPolygon(petaktengah22,4);

    point2D_t

    petaktengah33[4]={{80,90},{70,110},{290,110},{280,90}};

    drawPolygon(petaktengah33,4);

    point2D_t

    batang3[4]={{150,120},{170,520},{190,520},{210,120}};

    drawPolygon(batang3,4);

    point2D_t

    anaktangga[4]={{150,40},{150,45},{210,45},{210,40}};

    drawPolygon(anaktangga,4);

    point2D_t

    anaktangga2[4]={{150,30},{150,35},{210,35},{210,30}};

    drawPolygon(anaktangga2,4);

    point2D_t

    anaktangga3[4]={{150,20},{150,25},{210,25},{210,20}};

    drawPolygon(anaktangga3,4);

    point2D_t

    anaktangga4[4]={{150,10},{150,15},{210,15},{210,10}};

    drawPolygon(anaktangga4,4);

    }

    void display(void)

    {

    //clear screen

    glClear(GL_COLOR_BUFFER_BIT);

    userdraw();

    glutSwapBuffers();

    }int main(int argc, char **argv)

    {

    glutInit(&argc,argv);//Inisialisasi Toolkit

    glutInitDisplayMode(GLUT_DOUBLE|GLUT_RGB);

    glutInitWindowPosition(100,100);

    glutInitWindowSize(500,640);

    glutCreateWindow("dian widya utami MONUMEN NASIONAL JAKARTA");

    glClearColor(0.0,0.0,1.0,0.0);

    gluOrtho2D(0.,350.,-5.,600.);

  • 5/24/2018 LAPORAN PRAKTIKUM by Dian Widya Utami

    16/28

    16

    glutIdleFunc(display);

    glutDisplayFunc(display);

    glutMainLoop();

    return 0;

    }

    Hasilnya :

    3.2 Latihan Fungsi dari 3D

    #include "GL/glut.h"

    #include

    struct point {

    float x,y,z;

    };

    struct vektor {

    float v[4];

    };

    struct matriks {

    float m[4][4];

    };

    struct face {

    int jumtitikons;

  • 5/24/2018 LAPORAN PRAKTIKUM by Dian Widya Utami

    17/28

    17

    int indextitik[40];

    };

    struct objek {

    int jumtitik;

    point titik[40];

    int jumsisi;

    face sisi[30];

    };

    matriks mat;

    float theta=0.5;

    vektor point2vektor(objek balok, int i) {

    vektor vec;

    vec.v[0] = balok.titik[i].x;

    vec.v[1] = balok.titik[i].y;

    vec.v[2] = balok.titik[i].z;

    vec.v[3] = 1;

    return vec;

    }

    point vektor2point(vektor vec) {

    point pnt;

    pnt.x = vec.v[0];

    pnt.y = vec.v[1];

    pnt.z = vec.v[2];

    return pnt;

    }

    matriks identitas(void) {

    int i,j;

    matriks mat;

    for (i=0;i

  • 5/24/2018 LAPORAN PRAKTIKUM by Dian Widya Utami

    18/28

    18

    for (j=0;j

  • 5/24/2018 LAPORAN PRAKTIKUM by Dian Widya Utami

    19/28

    19

    rotate.m[0][0] = cs;

    rotate.m[0][2] = sn;

    rotate.m[2][0] = -sn;

    rotate.m[2][2] = cs;

    return rotate;

    }

    matriks rotasiZ(float theta) {

    matriks rotate = identitas();

    float cs = cos(theta);

    float sn = sin(theta);

    rotate.m[0][0] = cs;

    rotate.m[0][1] = -sn;

    rotate.m[1][0] = sn;

    rotate.m[1][2] = cs;

    return rotate;

    }

    vektor kali (matriks mat, vektor b) {

    int i,j;

    vektor c;

    for (i=0;i

  • 5/24/2018 LAPORAN PRAKTIKUM by Dian Widya Utami

    20/28

    20

    matriks c;

    for (i=0;i

  • 5/24/2018 LAPORAN PRAKTIKUM by Dian Widya Utami

    21/28

    21

    if (i==1) { r=0.0f; g=0.0f; b=1.0f; }

    if (i==2) { r=0.0f; g=0.0f; b=1.0f; }

    if (i==3) { r=0.0f; g=0.0f; b=1.0f; }

    if (i==4) { r=0.0f; g=0.0f; b=1.0f; }

    if (i==5) { r=0.0f; g=0.0f; b=1.0f; }

    if (i==6) { r=0.0f; g=0.0f; b=1.0f; }

    if (i==7) { r=0.0f; g=0.0f; b=1.0f; }

    if (i==8) { r=0.0f; g=0.0f; b=1.0f; }

    if (i==9) { r=0.0f; g=0.0f; b=1.0f; }

    if (i==10) { r=0.0f; g=0.0f; b=1.0f; }

    if (i==11) { r=0.0f; g=0.0f; b=1.0f; }

    glColor3f(r,g,b);

    for(j=0;j

  • 5/24/2018 LAPORAN PRAKTIKUM by Dian Widya Utami

    22/28

    22

    20,{{3,{11,2,1}},{3,{11,2,3}},{3,{11,4,3}},{3,{11,5,4}},{3,

    {11,6,5}},{3,{11,7,6}},{3,{11,8,7}},{3,{11,9,8}},{3,{11,10,9}},{3,{11,1,10}},

    {3,{0,2,1}},{3,{0,2,3}},{3,{0,4,3}},{3,{0,5,4}},{3,

    {0,6,5}},{3,{0,7,6}},{3,{0,8,7}},{3,{0,9,8}},{3,{0,10,9}},{3,{0,1,10}}

    }};

    for (i=0;i

  • 5/24/2018 LAPORAN PRAKTIKUM by Dian Widya Utami

    23/28

    23

    }

    Hasilnya adalah :

  • 5/24/2018 LAPORAN PRAKTIKUM by Dian Widya Utami

    24/28

    24

    BAB IV

    Analisa Hasil Percobaan

    a. Analisa 2DUntuk 2 Dimensi OpenGL yaitu transformasi dari koordinat nyata ke koordinat view-port

    untuk mendapatkan ukuran dan posisi gambar yang diinginkan.. OpenGL mendeskripsikan

    objek dengan warna objek adalah proses yang berjalan sendiri-sendiri. Sebelum warna diubah

    maka semua objek yang digambar sesudah perintah tersebut akan menggunakan warna

    terakhir yang terdapat pada coloring scheme. Untuk warna digunakan perintah glColor3f.

    Seperti gambar dibawah ini

    b. ANALISA 3DUntuk 3 Dimensi OpenGL akan melakukan komputasi warna setiap pixel di display akhir,

    ditampilkan adegan itu dilakukan di frame buffer. Bagian dari komputasi ini tergantung pada

    pewarnaan yang digunakan dalam adegan dan hal tersebut berkenaan dengan bagaimana

    suatu benda dalam adegan memampilkan dua warna yang berbeda pada satu gambar yang

    memiliki 2 sisi timbal balik atas bawah. Seperti gambar dibawah ini :

  • 5/24/2018 LAPORAN PRAKTIKUM by Dian Widya Utami

    25/28

    25

  • 5/24/2018 LAPORAN PRAKTIKUM by Dian Widya Utami

    26/28

    26

    KESIMPULAN DAN SARAN

    Kesimpulan

    Dari pembahasan dapat diambil kesimpulan sebagai berikut :

    1. Didalam pembuatan grafik di jaman serba teknologi ini kita bebas menentukan alat

    apa yang akan kita pakai, dan untuk memahami secara mendalam transformasi

    didalam grafik komputer sangatlah penting menguasai ilmu matematik.

    2. Perbandingan hasil pembuatan program dengan menggunakan bahasa programan

    lebih sulit dan berbeda jauh dari segi tampilan, maupun tata cara pembuatannya

    dibandingkan dengan program aplikasi yang menerapkan system just click (event

    driven).

    Saran

    Setelah melihat uraian di atas, penyusun mempunyai saran.

    1. Terlebih dahulu harus belajar algoritma, karena algorima adalah salah satu kunci

    untuk dapat memahami permasalahan yang akan dihadapi didalam pembuatan grafik

    komputer.

    2. Bila ingin membuat suatu gambar/grafik, pilihlah program aplikasi yang lebih bagus

    menurut anda, lebih kompleks, dan yang khusus menanganipembuatan

    gambar/grafik serta yang mengikuti perkembangan jaman .

    3. Harus memahami sintak-sintak (gaya bahasa penulisan dalam bahasa pemrograman )

    yang terdapat dalam bahasa pemrograman ataupun fitur fitur yang terdapat

    didalam program aplikasi.

  • 5/24/2018 LAPORAN PRAKTIKUM by Dian Widya Utami

    27/28

    27

    PENUTUP

    Demikian yang dapat kami paparkan mengenai materi yang menjadi pokok bahasan

    dalam makalah ini, tentunya masih banyak kekurangan dan kelemahannya, kerena

    terbatasnya pengetahuan dan kurangnya rujukan atau referensi yang ada hubungannya dengan

    judul makalah ini.

    Penulis banyak berharap para pembaca yang budiman dapat memberikan kritik dan

    saran yang membangun kepada penulis demi sempurnanya makalah ini dan dan penulisan

    makalah di kesempatan-kesempatan berikutnya. Semoga makalah ini berguna bagi penulis

    pada khususnya juga para pembaca yang budiman pada umumnya.

  • 5/24/2018 LAPORAN PRAKTIKUM by Dian Widya Utami

    28/28

    28

    DAFTAR PUSTAKA

    http://rosyidah-binti.blogspot.com/2013/04/opengl-glut.html

    http://iqbalmadboydyslexia.blogspot.com/2013/11/1.html

    http://rosyidah-binti.blogspot.com/2013/04/opengl-glut.htmlhttp://rosyidah-binti.blogspot.com/2013/04/opengl-glut.html