Sintak:
#include <GL/glut.h>
void garis();
main(int argc, char** argv)
{
glutInit(&argc,argv);
glutInitDisplayMode(GLUT_SINGLE|GLUT_RGB);
glutInitWindowSize(600,800);
glutInitWindowPosition(100,100);
glutCreateWindow("Triangle");
glClearColor(0.0,0.0,0.0,0.0);
glMatrixMode(GL_PROJECTION);
glOrtho(0.0,1.0,0.0,1.0,-1.0,1.0);
glutDisplayFunc(garis);
glutMainLoop();
}
void garis()
{
glClear(GL_COLOR_BUFFER_BIT);
glBegin(GL_LINES);
glColor3f(0.0,0.0,1.0);
glVertex2f(0.25,0.5);
glVertex2f(0.75,0.5);
glColor3f(5.0,0.0,0.0);
glVertex2f(0.75,0.5);
glVertex2f(0.5,0.8);
glColor3f(0.0,2.0,0.0);
glVertex2f(0.25,0.5);
glVertex2f(0.5,0.8);
glPointSize(50.0f) ;
glEnd();
glFlush();
}
Output:
Membuat Kubus
Sintak:
#include<GL/glut.h>
void titik();
void titik1();
main(int argc, char** argv)
{
glutInit(&argc,argv);
glutInitDisplayMode(GLUT_SINGLE|GLUT_RGB);
glutInitWindowSize(600,800);
glutInitWindowPosition(100,100);
glutCreateWindow("Cube");
glClearColor(0.0,0.0,0.0,0.0);
glMatrixMode(GL_PROJECTION);
glOrtho(0.0,1.0,0.0,1.0,-1.0,1.0);
glutDisplayFunc(titik);
glutMainLoop();
}
void titik()
{
glClear(GL_COLOR_BUFFER_BIT);
glBegin(GL_LINES);
glColor3f(5.0,5.0,5.0);
glVertex2f(0.25,0.5);
glVertex2f(0.57,0.5);
glColor3f(2.0,0.0,0.0);
glVertex2f(0.57,0.5);
glVertex2f(0.57,0.8);
glColor3f(0.0,0.0,2.0);
glVertex2f(0.25,0.5);
glVertex2f(0.25,0.8);
glColor3f(2.0,0.0,2.0);
glVertex2f(0.57,0.8);
glVertex2f(0.25,0.8);
glColor3f(2.0,0.0,2.0);
glVertex2f(0.25,0.5);
glVertex2f(0.45,0.6);
glColor3f(2.0,0.0,0.0);
glVertex2f(0.25,0.8);
glVertex2f(0.45,0.85);
glColor3f(0.0,0.0,2.0);
glVertex2f(0.45,0.6);
glVertex2f(0.45,0.85);
glColor3f(0.0,0.0,2.0);
glVertex2f(0.45,0.6);
glVertex2f(0.7,0.6);
glColor3f(5.0,5.0,5.0);
glVertex2f(0.57,0.5);
glVertex2f(0.7,0.6);
glColor3f(2.0,2.0,2.0);
glVertex2f(0.7,0.85);
glVertex2f(0.57,0.80);
glColor3f(0.0,0.2,2.0);
glVertex2f(0.7,0.85);
glVertex2f(0.7,0.6);
glColor3f(0.0,0.2,2.0);
glVertex2f(0.7,0.85);
glVertex2f(0.45,0.85);
glPointSize(50.0f) ;
glEnd();
glFlush();
}
Output:
Membuat Garis Pelangi
Sintak:
#include <GL/glut.h>
void garis();
main(int argc, char** argv)
{
glutInit(&argc,argv);
glutInitDisplayMode(GLUT_SINGLE|GLUT_RGB);
glutInitWindowSize(600,800);
glutInitWindowPosition(100,100);
glutCreateWindow("Rainbow Lines");
glClearColor(0.0,0.0,0.0,0.0);
glMatrixMode(GL_PROJECTION);
glOrtho(0.0,1.0,0.0,1.0,-1.0,1.0);
glutDisplayFunc(garis);
glutMainLoop();
}
void garis()
{
glClear(GL_COLOR_BUFFER_BIT);
glBegin(GL_LINES);
glColor3f(1.0,0.0,0.0);
glVertex2f(0.65,0.5);
glVertex2f(0.3,0.5);
glColor3f(1.0,1.0,0.0);
glVertex2f(0.65,0.51);
glVertex2f(0.3,0.51);
glColor3f(0.0,1.0,0.0);
glVertex2f(0.65,0.52);
glVertex2f(0.3,0.52);
glColor3f(0.0,0.0,1.0);
glVertex2f(0.65,0.53);
glVertex2f(0.3,0.53);
glColor3f(1.0,0.5,0.0);
glVertex2f(0.65,0.54);
glVertex2f(0.3,0.54);
glColor3f(1.0,0.0,1.0);
glVertex2f(0.65,0.55);
glVertex2f(0.3,0.55);
glColor3f(1.0,1.0,0.0);
glVertex2f(0.65,0.56);
glVertex2f(0.3,0.56);
glPointSize(50.0f) ;
glEnd();
glFlush();
}
Output:
Membuat Persegi dalam Persegi
Sintak:
#include <GL/glut.h>
void garis();
main(int argc, char** argv)
{
glutInit(&argc,argv);
glutInitDisplayMode(GLUT_SINGLE|GLUT_RGB);
glutInitWindowSize(600,800);
glutInitWindowPosition(100,100);
glutCreateWindow("Ironi didalam Ironi");
glClearColor(0.0,0.0,0.0,0.0);
glMatrixMode(GL_PROJECTION);
glutDisplayFunc(garis);
glutMainLoop();
}
void garis()
{
glBegin(GL_POLYGON);
glColor3f(1.0,1.0,1.0);
glVertex2f(-0.5,-0.5);
glVertex2f(-0.5,0.5);
glVertex2f(0.5,0.5);
glVertex2f(0.5,-0.5);
glEnd();
glBegin(GL_POLYGON);
glColor3f(5.0,0.0,0.0);
glVertex2f(-0.3,-0.3);
glVertex2f(-0.3,0.3);
glVertex2f(0.3,0.3);
glVertex2f(0.3,-0.3);
glEnd();
glFlush();
}
Output:
Penjelasan
- glClear() merupakan sintaks yang
digunakan untuk membersihkan semua pixel
- glBegin() merupakan sintaks untuk
memulai membuat gambar
- glVertex() merupakan sintaks untuk
memberikan titik pada gambar
- glEnd() merupakan sintaks penutup
- glFlush() merupakan sintaks untuk
memastikan gambar bisa dieksekusi
- glutCreateWindow() merupakan
sintaks untuk membuat dan menampilkan window
- glutDisplayFunc(mydisplay)
merupakan sintaks untuk memanggil method mydisplay
- glutMainLoop() merupakan
sintaks untuk me-looping atau mengulang fungsi/method main
Tidak ada komentar:
Posting Komentar