Sunday, April 28, 2013

Objek 2 Dimensi


Objek 2 Dimensi



Pengertian Objek grafik 2D 
Objek grafik 2 dimensi adalah sekumpulan titik-titik 2 dimensi yang dihubungkan dengan garis lurus, baik berupa polyline, polygon atau kurva. Objek grafik 2 dimensi didefinisikan sebagai kumpulan titik 2 dimensi yang secara komputasi dinyatakan sebagai array 1D, atau linkedlist sesuai dengan struktur data yang digunakan dalam menyatakan kumpulan titik 2D ini. 
Objek grafik dimensi juga adalah gambar 2 dimensi yang  sumbu x dan sumbu y, atau sumbu koordinat cartesius dua dimensi. Dua sumbu yang saling bertegak lurus antar satu dengan yang lain, yang keduanya terletak dalam satu bidang (bidang xy).
Sedangkan Grafik komputer 2D adalah sebuah generasi gambar digital berbasis komputer, yang kebanyakan mengambil objek-objek dua dimensi (2D). Model Grafik 2D merupakan kombinasi dari model geometri (juga disebut sebagai grafik vektor), gambar digital (raster graphics), fungsi matematika, dan sebagainya. Komponen-komponen ini dapat dimodifikasi dan dimanipulasi oleh transformasi geometri dua dimensi, seperti translasi, rotasi, dan dilatasi. 
Model-model yang digunakan pada disain grafis 2D biasanya tidak mendukung bentuk-bentuk tiga-dimensi, atau fenomena yang bersifat tiga dimensi, seperti pencahayaan, bayangan, pantulan, refraksi, dan sebagainya. Namun demikian, mereka dapat membuat model berlapis-lapis (layer); nyata, translusen, dan transparan, yang dapat ditumpuk dalam urutan tertentu. Urutan tersebut biasanya didefinisikan dengan angka (kedalaman lapisan, atau jarak dari si penglihat).


Macam-Macam objek 2D
1.       Line
2.       Circle
3.       Arc
4.       Polygon
5.       Text
6.       Section
7.       Rectangle
8.       Ellips
9.       Donut
10.    Star
11.    Helix



Circle
Circle atau lingkaran adalah object 2 dimensi yang memiliki ukuran diameter dan jari-jari. Circle atau lingkaran merupakan kumpulan titik-titik yang tak berhingga dan saling berhubung.

Line
Objek line/garis adalah objek salah satu 2 dimensi yang sangat mendasar dan sering digunakan untuk perancangan gambar kerja. Line berasal dari 2 titik yang saling terhubung.


Polygon


Polygon adalah suatu fungsi yang mirip dengan polyline, hanya sajahasilnya adalah kurva tertutup. Pada polygon digunakan konsep array dalam menyatakan objek 2D sebagaikumpulan titik 2D. Polygon digunakan untuk merepresentasikan objek-objek duadimensi.

Rectangle


Objek line/garis adalah objek salah satu 2 dimensi yang terdiri dari 4 garis dan membentuk persegi panjang dengan 2 sisi yang sama dan 2 sisi yang lain lebih panjang.

Color
Untuk memberi warna pada objek, seperti titik atau garis, dapat dilakukan dengan menggunakan fungsi Ă  glColor3f(red,green,blue);
Di mana red, green, blue berada pada 0 sampai dengan 1, yang menunjukkan skala pencerahan dari masing-masing skala.
Berikut adalah beberapa fungsi color :
1.      glColor3f(0,0,0);//black
2.      glColor3f(0,0,1);//blue
3.      glColor3f(0,1,0);//green
4.      glColor3f(0,1,1)//cyan
5.      glColor3f(1,0,0)//red
6.      glColor3f(1,0,1)//magenta
7.      glColor3f(1,1,0);//yellow
8.      glColor3f(1,1,1);//white

Contoh Program :
a.       Source Code
#include <stdlib.h>
#include <gl/glut.h>

void segiEmpat (int posx, int posy, int w, int h) {
      glBegin(GL_QUADS);
            glVertex2i(posx, posy);
            glVertex2i(w+posx, posy);
            glVertex2i(w+posx, posy-h);
            glVertex2i(posx, posy-h);
      glEnd();
}

void renderScene (void) {

      glClear(GL_COLOR_BUFFER_BIT);
      glLineWidth(5);
            glColor3f(1.,0.,0.);
            segiEmpat(-200,200,100,100); //segiempat merah
            glColor3f(1.,1.,0.);
            segiEmpat(100,200,150,150); //segiempat kuning
            glColor3f(0.,1.,1.);
            segiEmpat(0,0,50,50); //segiempat cyan
      glFlush();
}

void main (int argc, char **argv) {
      glutInit(&argc, argv);

      gluInitDisplayMode(GLUT_DEPTH | GLUT_SINGLE | GLUT_RGBA);
      glutInitWindowPosition(100,100);
      glutInitWindowSize(640,480);

      glutCreateWindow("GLUT");
            gluOrtho2D(-320.,320.,-320.,320.);
            glutDisplayFunc(renderScene);
      glutMainLoop();
}


b.      Hasil


 



0 komentar:

Post a Comment

Contact

Talk to us

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Dolores iusto fugit esse soluta quae debitis quibusdam harum voluptatem, maxime, aliquam sequi. Tempora ipsum magni unde velit corporis fuga, necessitatibus blanditiis.

Address:

9983 City name, Street name, 232 Apartment C

Work Time:

Monday - Friday from 9am to 5pm

Phone:

595 12 34 567

Followers

I'am at Malang University

free counters

Chatroom

Clock