Monday 22 May 2017

Membuat Segitiga - Tabung (OpenGL di Linux)





Assalamualaikum w,w,.
Kali ini saya mulai menulis artikel tentang kode lagi setelah sekian lama berhenti dari ngeblog :D, ini pu terpaksa. karena males masih pakai blogspot gak TLD hehehe. Oke Langsung saja apa sih OPENGL Itu.

OpenGL adalah kumpulan standard API (Application Programming Interface) yang menghubungkan software dengan hardware grafis untuk menampilkan gambar 2D dan 3D. Intinya OpenGL itu adalah kumpulan library untuk mengakses hardware (GL= graphical library).

nah jadi gitu.. apa sih Tujuan nya kok ada openGL .

OpenGL Bertujuan melakukan rendering objek-objek dua dimensi dan tiga dimensi berupa susunan vertex atau pixel ke dalam frame buffer.

nah itu dia.. 

mudeng kan..

Langsung aja ini source code buat Segitiga - Tabung + Translate +rotated nya.


#include <GL/gl.h>
#include <GL/glut.h>
#include <stdarg.h>
#include <math.h>

// kompile gcc -lglut -lGL -lGLU -lGLEW -lm post9.c -o post9
// ./post9

int i=0;
void bunder(void){
    glClear(GL_COLOR_BUFFER_BIT);
    glBegin(GL_LINE_LOOP);
    float x0=0;
    float y0=0;
    float r=35;
    float sudut;
    float pi=3.14;
    int jt=90;
      glBegin(GL_LINE_LOOP);
      for(int i=0; i<=360;i++){//selimut
      sudut=i*(2*pi/jt);
      float x=x0+r*cos(sudut);
      float y=y0+r*sin(sudut);
        glVertex3f(0,0,0.9);
        glVertex3f(x/150,y/150,0.4);
        glVertex3f(x/150,y/150,0.4);
        glVertex3f(x/150,y/150,0);
        glVertex3f(x/150,y/150,0);
        glVertex3f(0,0,-0.5);
      }
    glEnd();
    glFlush();
}
void muter(int value){
    i=i+5;
    glutPostRedisplay();
    glutTimerFunc(50,muter,value);
}
void geser(){
    glPushMatrix();
    glRotated(90,1,0,0);
    // glRotated(i,1,i,1); Kesamping
    glRotated(i,i,1,1);
    glTranslated(0,0.5,0);
    glTranslated(0.1,0,0);
    bunder();
    glPopMatrix();
}
int main(int argc, char** argv){
  glutInit(&argc, argv);
  glutCreateWindow("Eko | 1500018031");
  glutDisplayFunc(geser);
    glutTimerFunc(50,muter,1);
  glutMainLoop();
}

Nanti Hasilnya Seperti di Video ini :


Membuat Segitiga - Tabung (OpenGL di Linux)





0 komentar:

Post a Comment

Popular Posts