prak 1 grafika komputer
DESCRIPTION
belajar tentang grafika komputerTRANSCRIPT
BAB I
PENDAHULUAN
1.1. Latar Belakang
1.Apa Grafika Komputer Itu ?
Grafika komputer adalah gambar atau grafik yang dihasilkan oleh komputer.
Teknik-teknik yang dipelajari dalam grafika komputer adalah teknik-teknik bagaiaman
membuat atau menciptakan gambar menggunakan komputer. Ada perbedaan yang sangat
mendasar antara photo dan gambar, yaitu pada photo semua detail obyek terlihat sedangkan
pada gambar (baik itu gambar manusia atau gambar komputer) tidak dapat memperlihatkan
semua detail yang ada tetapi hanya detail-detail yang dianggap penting dalam menunjukkan
pola suatu gambar. Grafika komputer merupakan perangkat (tool) dasar yang digunakan
untuk membuat gambar dengan komputer. Dengan menggunakan perangkat ini, penciptaan
gambar dapat dilakukan bahkan dimudahkan dengan menggunakan komputer. Ada
beberapa program sederhana sampai program yang sangat kompleks dalam membuat
gambar komputer antara lain: Paint, Microsoft Photo Editor, Adobe Photoshop, Maya,
Autocad, 3D Space Max dan lain-lain. Untuk membuat program-program di atas, dapat
digunakan berbagai macam bahasa pemrograman dengan library grafis yang sesuai. Dalam
mata kuliah dan modul ini, digunakan bahasa pemrograman C++, bila menggunakan
Microsoft Windows digunakan Microsoft Visual C++, dan bila menggunakan sistem
operasi Linux dan keluarganya dapat digunakan gcc atau g++. Library grafik yang
digunakan dalam modul ini adalah OpenGL.
2.Dimana Grafik Yang Dibuat Dengan Komputer ini Digunakan
Keperluan grafika komputer akhir-akhir ini mulai dirasakan sangat penting dan
mencakup hamapir semua bidang kehidupan seiring dengan pentingnya sistem komputer
dalam melakukan berbagai kegiatan. Seperti halnya lukisan, anime atau kartun, sketsa dan
gambar manusia lainnya, grafika komputer sudah mulai dan banyak digunakan untuk
keperluan-keperluan:
1. Seni, Entertainment dan Publishing, seperti produksi film, animasi, special effect,
game komputer, web browsing, buku, slide, dan majalah
2. Image Processing atau pengolahan citra digital, dalam hal ini grafika komputer
dapat digunakan misalnya seperti dalam coding (pemindahan data citra menjadi data
vector) yang banyak digunakan untuk keperluan GIS.
3. Menampilkan proses yang sedang berjalan (process monitoring)
4. Menampilkan simulasi, dalam hal ini bisa diartikan grafik yang dihasilkan berupa
grafik data atau grafik visualisasi proses, seperti dalam simulasi perempatan jalan,
grafika komputer digunakan untuk melakukan visualisasi secara detail bagaimana
kedatanag mobil, pengaturan lampu lalu lintas dan semua item di dalamnya.
5. CAD (Computer Aided Design), ada satu program CAD yang paling banyak
digunakan dalam duani teknik, yaitu AUTOCAD. Dimana grafik komputer dapat
menunjukkan rancangan atau desain pola atau desian layout.
6. Visualisasi analisa sains, dalam hal ini grafik komputer dapat digunakan sebagai
sarana dalam menunjukkan proses ilmiah.
3.Elemen-Elemen Dasar Grafika Komputer
Ada beberapa elemen dasar dari grafika komputer antara lain:
1.Polylines
2.Text
3.Filled regions
4.Raster images
1. Polyline
Polyline adalah dereten garis-garis lurus yang berhubungan. Polyline ini adalah
dasar dari setiap pembuatan grafik.
2.Teks
Menunjukkan pola-pola huruf pada komputer, hal ini menyebabkan layout dari hasil
edit teks dengan menggunakan komputer menghasilkan banyak sekali variasi tulisan.
3.Filled Region
Filled-Region adalah bagaimana memberi (memblok) warna atau pattern pada
Haettenschweiler
Time New RomanHaettenschweiler Bold
Time New Roman boldHaettenschweiler italic
Time New Roman italic
Courier
Courier boldCourier italic
sebuah luasan
4. Raster Image
Raster image adalah penyajian gambar menggunakan matrik dari setiap sel gambar,
dimana sebuah gambar didefinisikan sebagai array dari besar-besaran numeris. Model data
ini banyak digunakan untuk keperluan pengolahan citra.
1 1 1 1 11 0 0 0 11 0 2 0 11 2 0 2 1
Beberapa Device Dalam Grafika Komputer
Beberapa peralatan selain komputer yang dapat digunakan untuk keperluan grafika
komputer antara lain:
1.Line-Drawing Display
2.Raster Display
3.Indexed Color dan The Lookup Table
4.Other Raster Display Devices
5.Hard-Copy Raster Devices
4.Definisi Obyek Grafik 2-D
Obyek grafik 2-D adalah sekumpulan titik-titik 2-D yang dihubungkan dengan
garis lurus baik berupa polyline, polygon atau kurva. Obyek grafik 2-D didefinisikan
sebagai sekumpulan titik 2-D yang secara komputasi dinyatakan sebagai array 1-D, atau
linked-list sesuai dengan struktur data yang digunakan dalam menyatakan kumpulan titik
2D ini.
Langkah-Langkah Untuk Mendefinisikan Obyek Grafik 2-D:
(1) Mendefinisikan struktur dari titik 2-D (Point2D_t)
(2) Mendefinisikan struktur warna (Color_t)
(3)Mendefinisikan struktur dari obyek grafik 2-D sebagai array dari titik 2-D (Object2D_t)
4.1.Mendefinisikan Titik 2D
Titik 2D mempunyai dua nilai yaitu x dan y yang menyatakan jarak horizontal dan
vertikal dari titik pusat sumbu koordinat (0,0).
Y
P(x,y)
y
(0,0)x X
Definisi dalam C++ Pengertian
typedef struct {Definisi ini digunakan bila titik didefinisikan dalam
float x,y; sistem koordinat yang menggunakan bilangan
} point2D_t;pecahan (float)
typedef struct {Definisi ini digunakan bila titik didefinisikan dalam
int x,y; sistem koordinat yang menggunakan bilangan bulat
} point2D_t;(integer)
Dengan menggunakan struktur data titik di atas, maka fungsi untuk menggambar
titik (drawDot) dapat dituliskan dengan:
(1) Untuk titik yang didefinisikan dengan integer :
void drawDot(point2D_t P)
{ glBegin(GL_POINTS)
; glVertex2i(P.x,P.y);
glEnd(); }
(2) Untuk titik yang didefinisikan dengan float :
Void
drawDot(point2D_t P)
{ glBegin(GL_POINTS)
; glVertex2i(P.x,P.y);
glEnd();
}
4.2. Mendefinisikan Warna
Seperti telah dibahas sebelumnya, warna yang digunakan terdiri dari 3 elemen
warna dasar yaitu RGB (red, green dan blue). Sehingga struktur data untuk menyatakan
warna ini adalah sebagai berikut:
typedef struct
{ float r,g,b;
} color_t;
Warna terdiri dari 3 elemen warna yaitu red (r), green (g) dan blue (b) yang nilainya
antara 0 dan 1 . Fungsi untuk memberi warna pada obyek grafik:
void setColor(color_t col)
{
glColor3f(col.r, col.g, col.b);
}
4.3. Mendefinisikan dan Menggambar Obyek Grafik 2-D
Definisi obyek ini dapat dituliskan pada function userdraw secara langsung
dengan menyatakannya sebagai array dari titik 2-D. Sebagai contoh untuk menyatakan
obyek shape dapat dituliskan:
point2D_t shape[1000]
Untuk menyatakan obyek bunga dengan jumlah titik 360 dapat dituliskan:
point2D_t bunga[360]
5. PolyLine
Polyline adalah suatu fungsi yang digunakan untuk menggambarkan obyek 2-D
yang sudah didefinisikan di depan, dimana setiap titik pada obyek mulai titik ke
0,1,2,3,…,n dihubungkan dengan garis lur menggambar obyek 2D dengan menggunakan
polyline dapat dituliskan dengan :
drawPolyline(nama_obyek2D, jumlah_titik)
Implementasi dari fungsi polyline adalah:
void drawPolyline(point2D_t pnt[],int n)
{
int i;
glBegin(GL_LI
NE_STRIP); for
(i=0;i<n;i++) {
glVertex2f(pnt[i].x, pnt[i].y);
}
glEnd();
}
dimana :
pnt[] menyatakan obyek 2D dalam array yang
ditentukan n adalah jumlah titik dalam obyek
2D pnt
Contoh implementasi menggambar obyek dengan polyline:
void userdraw(void)
{
point2D_t segitiga[3]={{0,0},{200,0},
{100,100}}; setColor(1,0,0);
drawPolyline(segitiga,3);
}
Hasilnya adalah:
Catatan, dalam program ini, definisi sistem koordinat digunakan
xrange=[0,640] dan yrange=[0,480] yang dituliskan dengan:
gluOrtho2D(0., 640., 0., 480.);
6. POLYGON
Polygon adalah suatu fungsi yang mirip dengan polyline hanya saja
hasilnya adalah kurva tertutup, sedangkan polyline hasilnya kurva terbuka.
Seperti halnya polyline, pada polygon ini juga digunakan konsep array dalam
menyatakan obyek 2D sebagai kumpulan titik 2D.
Untuk menggambar obyek 2D dengan menggunakan polyline dapat dituliskan
dengan :
drawPolygon(nama_obyek2D, jumlah_titik)
Implementasi dari fungsi polygon adalah:
void drawPolygon(point2D_t pnt[],int n){ int i;
glBegin(GL_LINE_LOOP);
for (i=0;i<n;i++) {
glVertex2f(pnt[i].x, pnt[i].y);
}
glEnd();
}
Contoh implementasi menggambar obyek dengan polygon:
void userdraw(void)
{
point2D_t segitiga[4]={{0,0},{200,0},{100,100}};
setColor(1,0,0);
drawPolygon(segitiga,3);
}
Hasilnya adalah:
7. FillPolygon
Fungsi ini digunakan untuk mewarnai atau memenuhi warna (mengecat) sebuah
polygon dengan warna tertentu. Untuk dapar mewarnai isi polygon dapat dituliskan:
fillPolygon(nama_obyek2D,jumlah_titik,warna);
Implementasi dari fungsi fillpolygon adalah:
void fillPolygon(point2D_t pnt[],int n, color_t color)
{
int i; setColor(color);
glBegin(GL_POLYGON);
for (i=0;i<n;i++) {
glVertex2f(pnt[i].x, pnt[i].y);
}
glEnd();
}
Contoh implementasi menggambar obyek dengan fillpolygon:
void userdraw(void)
{
point2D_t segitiga[4]={{0,0},{200,0},{100,100}}; //memblok
dengan warna kuning
color_t kuning={1,1,0};
fillPolygon(segitiga,3,kuning); //warna
garis tepi merah setColor(1,0,0);
drawPolygon(segitiga,3); }
Hasilnya adalah:
8. GradatePolygon
Fungsi ini digunakan untuk mewarnai sebuah polygon dengan warna-warna yang
bergradiasi dari suatu warna ke warna lainnya. Untuk memberikan efek gradiasi warna
pada polygon dapat dituliskan:
GradatePolygon(nama_obyek2D,jumlah_titik,warna);
Implementasi dari fungsi gradatePolygon adalah sebagai berikut:
void GradatePolygon(point2D_t pnt[],int n, color_t color)
{
int i;
glBegin(GL_POLYGON)
for (i=0;i<n;i++)
{ setColor(color);
glVertex2f(pnt[i].x,
pnt[i].y); } glEnd(); }
Contoh implementasi menggambar obyek dengan gradatepolygon:
void userdraw(void)
{
point2D_t segitiga[4]={{0,0},{200,0},{100,100}}; //memblok
dengan warna gradiasi kuning ke merah color_t
warna[3]={{1,1,0},{1,0,0},{1,0.5,0}};
fillPolygon(segitiga,3,warna);
//warna garis tepi merah
setColor(1,0,0);
drawPolygon(segitiga,3)}
Hasilnya adalah:
9.Membangun Obyek Grafik 2-D
Membangun obyek grafik 2-D secara umum menggunakan fungsi-fungsi seperti yang
dijelaskan di depan dapat dilakukan dengan:
1.Membuat obyek grafik 2-D secara langsung.
2.Membuat obyek grafik 2-D secara perhitungan matematis.
3.Membuat Obyek Grafik 2-D Secara Langsung
4.Membuat obyek grafik 2-D secara langsung bisa dilakukan pada function userdraw()
dengan menyatakan secara langsung koordinat titik-titiknya
Contoh Membuat Bintang
void userdraw()
{ Point2D_t bintang[10]={{80,146},{99,90},
{157,90},{110,55},{128,1},
{80,34},{32,1},{54,55},
{3,90},{63,90}}; color_t
merah={1,0,0};
setColor(merah);
drawPolygon(bintang,10)}
Hasilnya adalah:
1.2.Tujuan Masalah
(1) Mahasiswa bisa membuat (create) gambar menggunakan Open-GL dan bahasa C++.
(2) Mahasiswa bisa membuat gambar 2D dan gambar 3D.
(3) Mahasiswa dapat menerapkan prinsip-prinsip transformasi 2D dan 3D.
(4) Mahasiswa dapat menerapkan shading dan pencahayaan pada obyek gambar
(5) Mahasiswa dapat membuat morphing
(6) Mempelajari struktur dasar obyek grafik 2-D
(7) Membangun obyek grafik 2-D
(8) Mengenal macam-macam obyek 2-D yang menarik dan berguna, seperti pembuatan
grafik untuk keperluan visualisasi dan analisa
1.3.Alat dan Bahan Praktikum
Alat : Komputer
Bahan Praktikum : Software
BAB II
ISI
2.1. Langkah Percobaan
1.Percobaan Latihan 1
18
2.Percobaan Latihan 2
19
2.2. Data Hasil Percobaan
20
1.Percobaan Latihan 1
2.Percobaan Latihan 2
21
22
2.3. Analisa Data
23
24
BAB III
PENUTUP
3.1. KESIMPULAN
1. Pengertian 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 komputer adalah suatu bidang ilmu yang mempelajari bagaimana
membangun grafik (gambar) baik 2D maupun 3D yang kelihatan nyata
dengan menggunakan komputer. Salah satu bidang grafika komputer yang
sangat terkenal adalah desain grafis.
2. Adapun manfaat dari grafika komputer adalah :
Di Bidang Pendidikan
Grafik komputer pada pendidikan digunakan untuk mempresentasikan objek-
objek pada siswa secara nyata, dapat melalui power point ataupun software lainnya.
Di Bidang Hiburan
Tidak memungkiri pada sekarang ini semua acara hiburan di Televisi banyak
menggunakan grafik komputer. Mulai dari film kartun, iklan di TV dan sampai acara
sinetron sekalipun sudah di selipi oleh grafik computer
Di Bidang Perancangan
25
Pada bidang ini grafik komputer digunakan untuk membuat berbagai desain dan
model objek yang akan dibuat.
Open GL adalah suatu library grafis standart yang digunakan untuk keperluan
pemrograman grafis
Library dasar dari openGL adalah GLUT, dengan fasilitas yang bisa dikembangkan.
Untuk OS Windows,library ini terdiri dari 3 files yaitu :
- Glut.h
- Glut32.lib
- Glut32.dll
3. perbedaan antara grafik 3D dan 2D secara umum terletak pada komposisi objeknya.
Pada bidang Cartesian, grafik 2D hanya memiliki sumbu X dan Y, sedangkan grafik 3D
memiliki axis X, Y, dan Z. Dimana hal ini membuat objek grafik 3D memiliki volume
atau memiliki isi. Sehingga objek 3D dapat dilihat dari berbagai macam sudut.
Sedangkan Grafik 2D hanya memiliki satu sudut pandang saja, yaitu sisi yang sejajar
dengan posisi si penglihat. Oleh sebab itu kita tidak dapat melihat bagian belakang
maupun samping sebuah objek 2D.
26
DAFTAR PUSTAKA
Iva. 2011. Pengantar Grafika Komputer. (Online). http://blog.uinmalang.ac.id/ivageje/2011/05/17/pengantar-grafika-komputer/, diakses tanggal 22 Maret 2016.
Novendi, Arif. 2011. Manfaat Grafik Komputer. (Online).http://arifnovendi.blogspot.com/2011/01/manfaat-grafik-komputer.html, diakses tanggal 22 Maret 2016
Nurmalia, Yekti. 2011. Pengantar grafika komputer.(Online).http://blog.um.ac.id/yektinurmalia/2011/12/08/pengantargrafika-komputer/, diakses tanggal 22 Maret 2016.
27