Cara membuat lingkaran dengan menggunakan OpenGL yaitu dengan membuat fungsi sendiri.


Contoh hasil program membuat lingkaran



Contoh fungsi untuk membuat lingkaran:


void lingkaran(int radius, int jumlah_titik, int x_tengah, int y_tengah) {
 glBegin(GL_POLYGON);
 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,y);
 }
 glEnd();
}

Terdapat 4 parameter pada fungsi tersebut, yaitu:
radius : untuk menentukan jari-jari lingkaran
jumlah_titik : untuk menentukan jumlah titik yang akan dihubungkan pada lingkaran. semakin banyak titik,maka akan menjadi lingkaran sempurna. apabila jumlah titiknya 5,maka akan menjadi segilima.
x_tengah dan y_tengah : untuk menentukan titik tengah lingkaran

Lihat kode lengkapnya....

#include "stdlib.h"
#include "gl/glut.h"
#include "math.h"

const double PI = 3.141592653589793;
int i;

void back(){
glBegin(GL_QUADS);
glColor3f(1,1,1);
  glVertex2d (-150,150);
  glVertex2d(150,150);
  glVertex2d(150,-150);
  glVertex2d (-150,-150);
glEnd();
}


void lingkaran(int radius, int jumlah_titik, int x_tengah, int y_tengah) {
 glBegin(GL_POLYGON);
 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,y);
 }
 glEnd();
}

void Draw() {
 glClear(GL_COLOR_BUFFER_BIT);
 back();
 glColor3f(1.0, 0.0, 0.0);
 lingkaran(30,70,0,0);
 glColor3f(0.0, 1.0, 0.0);
 lingkaran(20,70,40,40);
 glColor3f(0.0, 0.0, 1.0);
 lingkaran(40,70,-60,-60);
 glFlush();
}


int main(int argc, char **argv) {
 glutInit(&argc, argv);
 glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);
 glutInitWindowSize(300, 300);
 glutInitWindowPosition(200, 200);
 glutCreateWindow("Lingkaran");
 gluOrtho2D(-150., 150., -150., 150.);
 glutDisplayFunc(Draw);
 glutMainLoop();
 return 0;
}

Selamat mencobaaaa...!! Baca Selengkapnya...

1 komentar:

Kobukai Indonesia mengatakan...

ijin share blog tentang OpenGL, ada 100 artikel lebih tentang OpenGL lengkap dengan souce code

www.heriadyblog.blogspot.co.id

About

- alivi -