#include <iostream>
#include <windows.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <stdarg.h>
#include <glut.h>
#include<math.h>
using namespace std;
void lingkaran( float r,int x0, int y0){
glBegin(GL_POLYGON);
float phi=3.14;
int point=90;
for(int i=1;i<=360;i++){
float sudut=i*(2*phi/point);
float x=x0+r*cos(sudut);
float y=y0+r*sin(sudut);
glVertex2f(x/100,y/100);
}
glEnd();
glFlush();
}
void tampil(){
glColor3f (0.0, 1.0, 1.0);
lingkaran(24,-30,0);//kaca kiri
lingkaran(24,30,0);//kaca kanan
glColor3f (0.0, 0.0, 1.0);
glLineWidth(5.0);
glBegin(GL_LINES);//garis tengah
glVertex2f(-0.06,0);
glVertex2f(0.06,0);
glEnd();
glBegin(GL_LINES);//garis kiri
glVertex2f(-0.54,0);
glVertex2f(-0.20,0.7);
glVertex2f(-0.20,0.7);
glVertex2f(-0.18,0.6);
glEnd();
glBegin(GL_LINES);//garis kanan
glVertex2f(0.54,0);
glVertex2f(0.88,0.7);
glVertex2f(0.88,0.7);
glVertex2f(0.90,0.6);
glEnd();
}
int main(int argc, char **argv){
printf("Kacamata\n");
glutCreateWindow("Kacamata");
glClear(GL_COLOR_BUFFER_BIT);
glutDisplayFunc(tampil);
glutMainLoop();
return 0;
}
RUN :

#include <windows.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <stdarg.h>
#include <glut.h>
#include<math.h>
using namespace std;
void lingkaran( float r,int x0, int y0){
glBegin(GL_POLYGON);
float phi=3.14;
int point=90;
for(int i=1;i<=360;i++){
float sudut=i*(2*phi/point);
float x=x0+r*cos(sudut);
float y=y0+r*sin(sudut);
glVertex2f(x/100,y/100);
}
glEnd();
glFlush();
}
void tampil(){
glColor3f (0.0, 1.0, 1.0);
lingkaran(24,-30,0);//kaca kiri
lingkaran(24,30,0);//kaca kanan
glColor3f (0.0, 0.0, 1.0);
glLineWidth(5.0);
glBegin(GL_LINES);//garis tengah
glVertex2f(-0.06,0);
glVertex2f(0.06,0);
glEnd();
glBegin(GL_LINES);//garis kiri
glVertex2f(-0.54,0);
glVertex2f(-0.20,0.7);
glVertex2f(-0.20,0.7);
glVertex2f(-0.18,0.6);
glEnd();
glBegin(GL_LINES);//garis kanan
glVertex2f(0.54,0);
glVertex2f(0.88,0.7);
glVertex2f(0.88,0.7);
glVertex2f(0.90,0.6);
glEnd();
}
int main(int argc, char **argv){
printf("Kacamata\n");
glutCreateWindow("Kacamata");
glClear(GL_COLOR_BUFFER_BIT);
glutDisplayFunc(tampil);
glutMainLoop();
return 0;