Transformasi Objek Grafika Komputer


1.      Fungsi dasar untuk Translasi (perubahan Posisi) objek
·       GLAPI void APIENTRY glTranslated( GLdouble x, GLdouble y, GLdouble z );
·       GLAPI void APIENTRY glTranslatef( GLfloat x, GLfloat y, GLfloat z );

2.        Fungsi dasar untuk Rotasi objek
·       GLAPI void APIENTRY glRotated( GLdouble angle, GLdouble x, GLdouble y, GLdouble z );
·       GLAPI void APIENTRY glRotatef( GLfloat angle, GLfloat x, GLfloat y, GLfloat z );

3.        Fungsi dasar untuk skala (perubahan ukuran) objek
·       void APIENTRY glScaled( GLdouble x, GLdouble y, GLdouble z );
·       GLAPI void APIENTRY glScalef( GLfloat x, GLfloat y, GLfloat z ); 

Yuk Membuat Bendera 
Syntax 

#include <stdlib.h>
#include <glut.h>

void garisBantu(int x, int y){
       glBegin(GL_LINES);
              glVertex2i(320,0);
              glVertex2i(-320,0);
              glVertex2i(0,320);
              glVertex2i(0,-320);
       glEnd();
}

void drawQuad(){
       glBegin(GL_QUADS);
              glVertex2f(0.,0.);
              glVertex2f(0.,20.);
              glVertex2f(90.,20.);
              glVertex2f(90.,0.);
       glEnd();
}

void renderScene(void){
       glClear(GL_COLOR_BUFFER_BIT);
              garisBantu(320,0);
              garisBantu(0,320);
              glColor3f(1.,1.,1.); drawQuad();
              glTranslatef(0,20,0);
              glColor3f(1.,0.,0.); drawQuad();
       glFlush();
}

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

       glutInitDisplayMode(GLUT_DEPTH | GLUT_SINGLE | GLUT_RGB);
       glutInitWindowPosition(100,100);
       glutInitWindowSize(480,480);
       glutCreateWindow("Novia Dimas");
              gluOrtho2D(-320.,320.,-320.,320.);
       glutDisplayFunc(renderScene);
       glutMainLoop();

Output


}


0 komentar:

Posting Komentar