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:
ijin share blog tentang OpenGL, ada 100 artikel lebih tentang OpenGL lengkap dengan souce code
www.heriadyblog.blogspot.co.id
Posting Komentar