Anda di halaman 1dari 10

LAPORAN PRAKTIKUM

Disusun untuk Memenuhi Matakuliah Grafika Komputer


Dibimbing oleh Bapak Ahmad Mursyiddun Nidhom, S. Pd., M. Pd.

Oleh
Fajri Novitasari
170533628549
S1 PTI 2017 A

UNIVERSITAS NEGERI MALANG


FAKULTAS TEKNIK
JURUSAN TEKNIK ELEKTRO
PRODI S1 PENDIDIKAN TEKNIK INFORMATIKA
September 2018
Studi Kasus I
OpenGL

Nama Program : Membuat Layang-Layang 2 Dimensi


Bahasa Pemrograman : C++
Compiler : Microsoft Visual Studio
Script Program :
#include <stdlib.h>
#include <glut.h>
void renderScene(void)
{
glClear(GL_COLOR_BUFFER_BIT);
glBegin(GL_POLYGON);
glVertex3f(0.0,5.0,0.0);//a
glVertex3f(5.0,0.0,0.0);//b
glVertex3f(0.0,-10.0,0.0);//c
glVertex3f(-5.0,0.0,0.0);//d
glEnd();
glFlush();
}
void main(int argc, char **argv)
{
glutInit(&argc,argv);
glutInitDisplayMode(GLUT_DEPTH | GLUT_SINGLE | GLUT_RGBA);
glutInitWindowPosition(100,100);
glutInitWindowSize(500,500);
glutCreateWindow("Pemprograman Grafis Layang-Layang POLYGON");
gluOrtho2D(-50.0,50.0,-50.0,50.0);
glutDisplayFunc(renderScene);
glutMainLoop();
}
Output Program :

Penjelasan :
Tujuan dari program di atas adalah untuk menampilkan hasil dari pemrograman
grafis laying-layang dua dimensi dengan menggunakan polygon. Pembuatan layang-
layang dilakukan dengan pendeklarasian glBegin(GL_POLYGON), fungsi tersebut
menghasilkan kurva tertutup dengan blok warna (fill). Untuk membuat layang-layang
terlebih dahulu menentukan 4 titik. Titik pertama diletakkan pada koordinat 0 pada
sumbu x dan 5 pada sumbu y atau ditulis dengan fungsi glVertex3f(0.0,5.0,0.0), titik
kedua pada koordinat 5 pada sumbu x dan sumbu y pada koordinat 0 dan fungsinya
dapat dituliskan dengan glVertex3f(5.0,0.0,0.0), titik ketiga pada koordinaat 0 pada
sumbu x dan sumbu y pada titik koordinat -10 dan dapat ditulis fungsinya yaitu
glVertex3f(0.0,-10.0,0.0), selanjutnya pada titik ke empat sumbu x pada titik
koordinat -5 dan sumbu y pada titik koordinat 0 yang fungsinya dituliskan glVertex3f(-
5.0,0.0,0.0). Pada syntax glutInitDisplayMode(GLUT_DEPTH | GLUT_SINGLE |
GLUT_RGBA) digunakan untuk menentukan display mode awal yaitu depth buffer, single
buffer, dan RGBA mode. Selanjutnya untuk menentukan letak posisi windows dengan
dideklarasikan fungsi glutInitWindowPosition(100,100) dan
glutInitWindowSize(500,500) merupakan fungsi yang digunakan untuk membuat
windows dengan ukuran sebesar 500 pixel x 500 pixel. Fungsi
glutCreateWindow("Pemprograman Grafis Layang-Layang POLYGON") digunakan untuk
membuat window dengan nama Pemrograman Grafis Layang-Layang POLYGON.
gluOrtho2D(-50.0,50.0,-50.0,50.0) digunakan untuk deklarasi besarnya system
koordinat dengan range sumbu x dan y.
Studi Kasus II
OpenGL

Nama Program : Membuat Grafis Insial Nama


Bahasa Pemrograman : C++
Compiler : Microsoft Visual Studio
Script Program :
#include <stdlib.h>
#include <glut.h>
void renderScene(void)
{
glPointSize(5.5);
glBegin(GL_POINTS);
glVertex2i(4.0, 4.0);//a
glVertex2i(4.0, 2.0);//b
glVertex2i(4.0, 0.0);//c
glVertex2i(4.0, -2.0);//d
glVertex2i(4.0, -4.0);//e
glVertex2i(-4.0, -4.0);//f
glVertex2i(-4.0, -2.0);//g
glVertex2i(-4.0, 0.0);//h
glVertex2i(-4.0, 2.0);//i
glVertex2i(-4.0, 4.0);//j
glVertex2i(-2.0, 2.0);//k
glVertex2i(0.0, 0.0);//l
glVertex2i(2.0, -2.0);//m

glEnd();
glFlush();
}
void main(int argc, char **argv)
{
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_DEPTH | GLUT_SINGLE | GLUT_RGBA);
glutInitWindowPosition(100, 100);
glutInitWindowSize(500, 500);
glutCreateWindow("Pemprograman Grafis INISIAL NAMA");
gluOrtho2D(-50.0, 50.0, -50.0, 50.0);
glutDisplayFunc(renderScene);
glutMainLoop();
}

Output Program :

Penjelasan :
Tujuan dari program di atas adalah untuk menampilkan inisial nama hasil dari
pemrograman grafis. Pembuatan inisial nama dilakukan dengan pendeklarasian
glBegin(GL_POINTS), fungsi tersebut digunakan untuk membuat titik. Untuk membuat
inisial nama terlebih dahulu menentukan titik yang membentuk huruf. Inisial nama
yang digunakan user adalah huruf N dan user menentukan 13 titik untuk membuat
huruf tersebut. Titik pertama diletakkan pada koordinat 4 pada sumbu x dan 4 pada
sumbu y atau ditulis dengan fungsi glVertex2i(4.0, 4.0), titik kedua pada koordinat 4
pada sumbu x dan sumbu y pada koordinat 2 dan fungsinya dapat dituliskan dengan
glVertex2i(4.0, 2.0), titik ketiga pada koordinaat 4 pada sumbu x dan sumbu y pada
titik koordinat 0 dan dapat ditulis fungsinya yaitu glVertex2i(4.0, 0.0), selanjutnya
pada titik ke empat sumbu x pada titik koordinat 4 dan sumbu y pada titik koordinat -2
yang fungsinya dituliskan glVertex2i(4.0,-2.0), pada titik kelima fungsi koordinat
dituliskan glVertex2i(4.0, -4.0) dengan sumbu x pada koordinat 4 dan sumbu y
koordinat -4, selanjutnya pada titik keenam dengan fungsi glVertex2i(-4.0, -4.0)
dengan sumbu x pada koordinat -4 dan sumbu y koordinat -4, titik ketujuh pada
koordinat -4 sumbu x dan koordinat -2 pada sumbu y dengan fungsi glVertex2i(-4.0,
-2.0), titik ke delapan pada koordinat -4 sumbu x dan pada sumbu y koordinat 0
dengan fungsi glVertex2i(-4.0, 0.0), titik ke sembilan pada sumbu x koordinat -4 dan
sumbu y pada koordinat 2 dengan fungsi glVertex2i(-4.0, 2.0), titik ke sepuluh pada
sumbu x koordinat -4 dan sumbu y pada koordinat 4 dengan fungsi glVertex2i(-4.0,
4.0), titik ke 11 pada sumbu x koordinat -2 dan sumbu y pada koordinat 2 dengan
fungsi glVertex2i(-2.0, 2.0), titik ke 12 sumbu x pada koordinat 0 dan sumbu y pada
koordinat 0 dengan fungsi glVertex2i(0.0, 0.0), dan pada titik ke 13 sumbu x pada
koordinat 2 dan sumbu y pada koordinat -2 glVertex2i(2.0, -2.0). Pada syntax
glutInitDisplayMode(GLUT_DEPTH | GLUT_SINGLE | GLUT_RGBA) digunakan untuk
menentukan display mode awal yaitu depth buffer, single buffer, dan RGBA mode.
Selanjutnya untuk menentukan letak posisi windows dengan dideklarasikan fungsi
glutInitWindowPosition(100,100) dan glutInitWindowSize(500,500) merupakan fungsi
yang digunakan untuk membuat windows dengan ukuran sebesar 500 pixel x 500 pixel.
Fungsi glutCreateWindow("Pemprograman Grafis INISIAL NAMA") digunakan untuk
membuat window dengan nama Pemrograman Grafis Inisial Nama. gluOrtho2D(-
50.0,50.0,-50.0,50.0) digunakan untuk deklarasi besarnya system koordinat dengan
range sumbu x dan y.

Studi Kasus III


OpenGL

Nama Program : Membuat Gabungan Dua Objek Dengan Warna Yang


Berbeda
Bahasa Pemrograman : C++
Compiler : Microsoft Visual Studio
Script Program :
#include <stdlib.h>
#include <glut.h>
void renderScene(void)
{
glClear(GL_COLOR_BUFFER_BIT);
glBegin(GL_TRIANGLES);
glColor3f(1.0, 0.0, 0.0);
glVertex2f(0.0, 5.0);//a
glVertex2f(7.0, 0.0);//b
glVertex2f(-7.0, 0.0);//c glEnd();
glFlush();
glBegin(GL_POLYGON);
glColor3f(0.0, 1.0, 0.0);
glVertex2f(7.0, 0.0);//a
glVertex2f(7.0, -7.0);//b
glVertex2f(-7.0, -7.0);//c
glVertex2f(-7.0, -0.0);//d glEnd();
glFlush();
}
void main(int argc, char **argv)
{
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_DEPTH | GLUT_SINGLE | GLUT_RGBA);
glutInitWindowPosition(100, 100);
glutInitWindowSize(500, 500);
glutCreateWindow("Pemprograman Grafis 2 BIDANG");
gluOrtho2D(-50.0, 50.0, -50.0, 50.0);
glutDisplayFunc(renderScene);
glutMainLoop();
}

Output Program :

Penjelasan :
Tujuan dari program di atas adalah untuk menampilkan gabungan dua objek
dengan warna yang berbeda dari pemrograman grafis. Pembuatan gabungan dari dua
objek dilakukan dengan pendeklarasian glBegin(GL_TRIANGLES) dan
glBegin(GL_POLYGON). Fungsi glColor3f(1.0, 0.0, 0.0) digunakan untuk memberi
warna merah pada objek segitiga. Pada objek segitiga titik pertama diletakkan pada
koordinat 0 pada sumbu x dan 5 pada sumbu y atau ditulis dengan fungsi
glVertex2f(0.0, 5.0), titik kedua pada koordinat 7 pada sumbu x dan sumbu y pada
koordinat 0 dan fungsinya dapat dituliskan dengan glVertex2f(7.0, 0.0), dan titik
ketiga pada koordinaat -7 pada sumbu x dan sumbu y pada titik koordinat 0 dan dapat
ditulis fungsinya yaitu glVertex2f(-7.0, 0.0). Fungsi glColor3f(0.0, 1.0, 0.0)
didalam fungsi glBegin(GL_POLYGON) digunakan untuk memberi warna hijau pada objek
polygon. Selanjutnya pada objek polygon titik pertama diletakkan pada koordinat 7
pada sumbu x dan 0 pada sumbu y atau ditulis dengan fungsi glVertex2f(7.0, 0.0),
titik kedua pada koordinat 7 pada sumbu x dan sumbu y pada koordinat -7 dan
fungsinya dapat dituliskan dengan glVertex2f(7.0,-7.0), titik ketiga pada koordinaat -7
pada sumbu x dan sumbu y pada titik koordinat -7 dan dapat ditulis fungsinya yaitu
glVertex2f(-7.0,-7.0), dan titik ke-empat pada koordinaat -7 pada sumbu x dan sumbu
y pada titik koordinat 0 dan dapat ditulis fungsinya yaitu glVertex2f(-7.0, -0.0). Pada
syntax glutInitDisplayMode(GLUT_DEPTH | GLUT_SINGLE | GLUT_RGBA) digunakan untuk
menentukan display mode awal yaitu depth buffer, single buffer, dan RGBA mode.
Selanjutnya untuk menentukan letak posisi windows dengan dideklarasikan fungsi
glutInitWindowPosition(100,100) dan glutInitWindowSize(500,500) merupakan fungsi
yang digunakan untuk membuat windows dengan ukuran sebesar 500 pixel x 500 pixel.
Fungsi glutCreateWindow("Pemprograman Grafis 2 BIDANG") digunakan untuk membuat
window dengan nama Pemrograman Grafis 2 BIDANG. gluOrtho2D(-50.0,50.0,-
50.0,50.0) digunakan untuk deklarasi besarnya system koordinat dengan range sumbu
x dan y.

Studi Kasus IV
OpenGL

Nama Program : Membuat Gabungan Dua Objek Dengan Warna Yang


Berbeda dan Warna Background Diubah
Bahasa Pemrograman : C++
Compiler : Microsoft Visual Studio
Script Program :
#include <stdlib.h>
#include <glut.h>
void renderScene(void)
{
glClearColor(0.0f, 0.0f, 1.0f, 0.0f);
glClear(GL_COLOR_BUFFER_BIT);
glBegin(GL_TRIANGLES);
glColor3f(1.0, 0.0, 0.0);
glVertex2f(0.0, 5.0);//a
glVertex2f(7.0, 0.0);//b
glVertex2f(-7.0, 0.0);//c glEnd();
glFlush();

glBegin(GL_POLYGON);
glColor3f(0.0, 1.0, 0.0);
glVertex2f(7.0, 0.0);//a
glVertex2f(7.0, -7.0);//b
glVertex2f(-7.0, -7.0);//c
glVertex2f(-7.0, -0.0);//d glEnd();
glFlush();
}
void main(int argc, char **argv)
{
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_DEPTH | GLUT_SINGLE | GLUT_RGBA);
glutInitWindowPosition(100, 100);
glutInitWindowSize(500, 500);
glutCreateWindow("Pemprograman Grafis 2 Bidang Background
Biru");
gluOrtho2D(-50.0, 50.0, -50.0, 50.0);
glutDisplayFunc(renderScene);
glutMainLoop();
}

Output Program :

Penjelasan :
Tujuan dari program di atas adalah untuk menampilkan gabungan dua objek
dengan warna yang berbeda dan warna background diubah. Pembuatan gabungan dari
dua objek dilakukan dengan pendeklarasian glBegin(GL_TRIANGLES) dan
glBegin(GL_POLYGON). Pada fungsi void renderScene(void) terdapat
glClearColor(0.0f, 0.0f, 1.0f, 0.0f) yang digunakan untuk mengubah warna
background yaitu menjadi warna biru. glColor3f(1.0, 0.0, 0.0) digunakan untuk
memberi warna merah pada objek segitiga. Pada objek segitiga titik pertama diletakkan
pada koordinat 0 pada sumbu x dan 5 pada sumbu y atau ditulis dengan fungsi
glVertex2f(0.0, 5.0), titik kedua pada koordinat 7 pada sumbu x dan sumbu y pada
koordinat 0 dan fungsinya dapat dituliskan dengan glVertex2f(7.0, 0.0), dan titik
ketiga pada koordinaat -7 pada sumbu x dan sumbu y pada titik koordinat 0 dan dapat
ditulis fungsinya yaitu glVertex2f(-7.0, 0.0). Fungsi glColor3f(0.0, 1.0, 0.0)
didalam fungsi glBegin(GL_POLYGON) digunakan untuk memberi warna hijau pada objek
polygon. Selanjutnya pada objek polygon titik pertama diletakkan pada koordinat 7
pada sumbu x dan 0 pada sumbu y atau ditulis dengan fungsi glVertex2f(7.0, 0.0),
titik kedua pada koordinat 7 pada sumbu x dan sumbu y pada koordinat -7 dan
fungsinya dapat dituliskan dengan glVertex2f(7.0,-7.0), titik ketiga pada koordinaat -7
pada sumbu x dan sumbu y pada titik koordinat -7 dan dapat ditulis fungsinya yaitu
glVertex2f(-7.0,-7.0), dan titik ke-empat pada koordinaat -7 pada sumbu x dan sumbu
y pada titik koordinat 0 dan dapat ditulis fungsinya yaitu glVertex2f(-7.0, -0.0). Pada
syntax glutInitDisplayMode(GLUT_DEPTH | GLUT_SINGLE | GLUT_RGBA) digunakan untuk
menentukan display mode awal yaitu depth buffer, single buffer, dan RGBA mode.
Selanjutnya untuk menentukan letak posisi windows dengan dideklarasikan fungsi
glutInitWindowPosition(100,100) dan glutInitWindowSize(500,500) merupakan fungsi
yang digunakan untuk membuat windows dengan ukuran sebesar 500 pixel x 500 pixel.
Fungsi glutCreateWindow("Pemprograman Grafis 2 Bidang Background Biru")
digunakan untuk membuat window dengan nama Pemrograman Grafis 2 Bidang
Background Biru. gluOrtho2D(-50.0,50.0,-50.0,50.0) digunakan untuk deklarasi
besarnya system koordinat dengan range sumbu x dan y.

Anda mungkin juga menyukai