Cara Membuat Linkaran Menggunakan OpenGL

Membuat Lingkaran Menggunakan OpenGL

Pada kesempatan kali ini kita akan Membuat Linkaran Menggunakan OpenGL, Seperti biasanya malasupload.com hanya akan membaikan source code gratis saja tanpa ada penjelasan. Silahkan teman-teman cari di Google.co.id untuk mendaptkan penjelasan yang lebih detail.

Oke teman-teman langsung saja ya, tidak perlu banyak basa-basi. Silahkan siapkan tools yang akan kalian gunakan kemudian copy source code dibawah ini :

#include <gl/glut.h>
#include <windows.h>
#include <math.h>

const double PI = 3.141592653589793;
int i,radius,jumlah_titik,x_tengah,y_tengah;
void Draw() {
glClear(GL_COLOR_BUFFER_BIT);
glColor3f(1.0, 1.0, 1.0);

glBegin(GL_LINE_LOOP);
radius=40;
jumlah_titik=20;
x_tengah=50;
y_tengah=50;
for (i=0;i<=360;i++){
float sudut=i*(2*PI/jumlah_titik);
float x=x_tengah+radius*cos(sudut);
float y=y_tengah+radius*sin(sudut);
glVertex2f(x/100,y/100);


}
glEnd();


glFlush();
}

void Initialize() {
glClearColor(0.0, 0.0, 0.0, 0.0);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glOrtho(0.0, 1.0, 0.0, 1.0, -1.0, 1.0);
}

int main(int iArgc, char** cppArgv) {
glutInit(&iArgc, cppArgv);
glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);
glutInitWindowSize(250, 250);
glutInitWindowPosition(200, 200);
glutCreateWindow("Lingkaran");
Initialize();
glutDisplayFunc(Draw);
glutMainLoop();
return 0;
}
Jika program diatas kita jalankan maka akan tempil seperti gambar dibawah ini:

Cara Membuat Linkaran Menggunakan OpenGL
Gambar Demo

Kemudian jika teman-teman ingin membuat sedikit variasi di lingkaran tersebut, teman-teman bisa copy source code dibawah ini :

#include <gl/glut.h>
#include <windows.h>
#include <math.h>

const double PI = 3.141592653589793;
int i,radius,jumlah_titik,x_tengah,y_tengah;
void Draw() {
glClear(GL_COLOR_BUFFER_BIT);
glColor3f(1.0, 1.0, 1.0);

glBegin(GL_LINE_LOOP);
radius=40;
jumlah_titik=20;
x_tengah=50;
y_tengah=50;
for (i=0;i<=360;i++){
float sudut=i*(2*PI/jumlah_titik);
float x=x_tengah+radius*cos(sudut);
float y=y_tengah+radius*sin(sudut);
glVertex2f(x/100,y/100);


}
glEnd();

glBegin(GL_TRIANGLE_FAN);
radius=5;
jumlah_titik=20;
x_tengah=30;
y_tengah=60;
for (i=0;i<=jumlah_titik;i++){
float sudut=i*(2*PI/jumlah_titik);
float x=x_tengah+radius*cos(sudut);
float y=y_tengah+radius*sin(sudut);
glVertex2f(x/100,y/100);


}
glEnd();

glBegin(GL_TRIANGLE_FAN);
radius=5;
jumlah_titik=20;
x_tengah=70;
y_tengah=60;
for (i=0;i<=jumlah_titik;i++){
float sudut=i*(2*PI/jumlah_titik);
float x=x_tengah+radius*cos(sudut);
float y=y_tengah+radius*sin(sudut);
glVertex2f(x/100,y/100);


}
glEnd();

glBegin(GL_LINE_LOOP);
glVertex2f(0.5,0.6);
glVertex2f(0.4,0.5);
glVertex2f(0.6,0.5);
glEnd();

glBegin(GL_LINE_LOOP);
radius=20;
jumlah_titik=180;
x_tengah=50;
y_tengah=40;
for (i=90;i<=jumlah_titik;i++){
float sudut=i*(2*PI/jumlah_titik);
float x=x_tengah+radius*cos(sudut);
float y=y_tengah+radius*sin(sudut);
glVertex2f(x/100,y/100);


}
glEnd();
glFlush();
}

void Initialize() {
glClearColor(0.0, 0.0, 0.0, 0.0);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glOrtho(0.0, 1.0, 0.0, 1.0, -1.0, 1.0);
}

int main(int iArgc, char** cppArgv) {
glutInit(&iArgc, cppArgv);
glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);
glutInitWindowSize(250, 250);
glutInitWindowPosition(200, 200);
glutCreateWindow("Lingkaran senyum");
Initialize();
glutDisplayFunc(Draw);
glutMainLoop();
return 0;
}
Jika program tersebut kita jalankan, maka akan tampil seperti gambar dibawah ini :

Lingkaran senyum openGL
Gambar Demo

Oke teman-teman itu dia sedikit trik dalam membuat lingkaran sederhana dan variasi menggunakan OpenGL. Semoga dengan adanya artikel ini dapat membantu teman-teman semua dalam mengerjakan tugasnya.

0 Comments

Post a Comment

Terimakasih telah mengunjungi situs ini. Silahkan berkomentar dengan bijak.Komentar spam atau berisikan link aktif tidak akan di tampilkan. Terimakasih