Blogroll

Pages

Wednesday, May 1, 2013

Primitive Objek pada Grafika Komputer


Penghasilan gambar pada grafika komputer menggunakan primitif grafik dasar. Primitif ini memudahkan untuk menggambar pada layar monitor sebagaimana penggunaan persamaan geometrik sederhana. Contoh primitif grafik dasar adalah :
o Titik
o Garis, Segiempat
o Kurva, Lingkaran, ellipse, kurva bezier, kurva lainnya
o Fill area
o Text

Objek kompleks dapat dibuat dengan kombinasi dari primitif ini. Adapun contoh grafik primitif yang lain adalah :
o Poligaris yaitu urutan garis lurus yang saling terhubung.
o Teks adalah bentuk bahasa tulisan dengan simbol-simbol tertentu. Teks merupakan kumpulan lebih dari dua karakter.
o Citra raster adalah gambar yang dibuat dengan piksel yang membedakan bayangan dan warna. Citra raster disimpan dalam komputer sebagai larik bernilai numerik. Larik tersebut dikenal sebagai piksel map atau bitmap. Ada tiga cara untuk menghasilkan citra grafik yaitu Citra didisain dengan tangan, Citra yang didapat dari perhitungan dan Citra yang discan. Pemaparan citra raster dinyatakan oleh piksel dengan video displays (Cathod-ray Tube CRT), flat panel dispalys (LCD), hardcopy (printer laser, dot matrix printers, ink-jet printers). Contoh proses pemaparan permukaan adalah citra yang ditangkap lalu disimpan di frame buffer, kemudian digunakan untuk mewarnai sebuah titik pada permukaan pemapar. Selanjutnya proses scan di CRT. Frame buffer adalah matriks 2 dimensi yang mewakili piksel pada pemapar. Ukuran matriks harus cukup untuk menyimpan kedalam warna pemapar untuk semua piksel. Sebagai contoh pemapar (monitor) berresolusi 1280 x 1024 mempunya kedalaman warna 24 bit (~16 juta warna) membutuhkan ruang simpan sekitar 4 Mb.
o Piksel dan Bitmap. Jumlah bit yang digunakan untuk mewakili warna/bayangan dari masin-masing piksel (picture element = pixel). 4 bit/piksel = 24 = 16 level abu-abu

IMPLEMENTASI
Contoh program untuk merepresentasikan model obyek segiempat 2D. OpenGL memiliki beberapa komponen dasar untuk merepresentasikan suatu obyek. Komponen dasar tersebut, disebut sebagai OpenGL Geometric primitives.
Setiap obyek harus dimodelkan sebagai kombinasi dari komponen-komponen dasar tersebut. Sebagai contoh, obyek segiempat dimodelkan dengan menggunakan komponen dasar GL_POLYGON. Obyek tersebut dapat pula dimodelkan dengan komponen dasar GL_TRIANGLES atau pun GL_QUAD.

Dalam OpenGL, menggambar geometric primitives selalu dilakukan di antara fungsi

  Setiap OpenGL geometric primitive dispesifikasi oleh urutan vertex-vertex-nya dalam bentuk urutan koordinat homogenous. Koordinat homogenous adalah koordinat dalam bentuk ( x, y, z, w ). Setiap primitive memiliki standar tentang bagaimana vertex-vertex diorganisasikan.
Bentuk umum coding untuk pembuatan garis :
glBegin(GL_LINES); /* Ingin menggambar garis */ 
glVertex2(tipe_data)(koordinat X1, koordinat Y1);   /* menyatakan sejumlah titik */
glVertex2(tipe_data)(koordinat X2, koordinat Y2);   /* menyatakan sejumlah titik */
glEnd();  /* Akhir menggambar titik */
Bentuk umum coding untuk pembuatan segitiga (triangle):
glBegin(GL_TRIANGLES); // awal menggambar segitiga
glVertex2d(x0,y0); //menyatakan sejumlah titik
glVertex2d(x1,y1); //menyatakan sejumlah titik
glVertex2d(x2,y2); //menyatakan sejumlah titik
glVertex2d(x3,y3); //menyatakan sejumlah titik
glVertex2d(x4,y4); //menyatakan sejumlah titik
glVertex2d(x5,y5); //menyatakan sejumlah titik
glEnd(); //Akhir menggambar titik
Bentuk coding untuk pembuatan kotak :          
glBegin(GL_POLYGON); // awal membuat objek kotak
glVertex2d(x0,y0);  //menyatakan sejumlah titik
glVertex2d(x1,y1);  //menyatakan sejumlah titik
glVertex2d(x2,y2);  //menyatakan sejumlah titik
glVertex2d(x3,y3);  //menyatakan sejumlah titik
glVertex2d(x4,y4);  //menyatakan sejumlah titik
glVertex2d(x5,y5);  //menyatakan sejumlah titik
glVertex2d(x6,y6);  //menyatakan sejumlah titik
glVertex2d(x7,y7);  //menyatakan sejumlah titik
glEnd(); // Akhir menggambar tit

0 comments:

Post a Comment