1.1.1
Source Code
#include<stdlib.h>
#include<glut.h>
int w = 480;
int h = 480;
void drawQuad()
{
glBegin(GL_QUADS);
glColor3f(0,1,1);
glVertex2d(-30,50);
glVertex2d(30,50);
glVertex2d(30,-30);
glVertex2d(-30,-30);
glEnd();
glBegin(GL_TRIANGLES);
glColor3f(1,1,0);
glVertex2d(-25,60);
glVertex2d(-20,50);
glVertex2d(-30,50);
glEnd();
glBegin(GL_TRIANGLES);
glColor3f(1,1,0);
glVertex2d(25,60);
glVertex2d(30,50);
glVertex2d(20,50);
glEnd();
glBegin(GL_QUADS);
glColor3f(2,0,2);
glVertex2d(-20,40);
glVertex2d(-10,40);
glVertex2d(-10,20);
glVertex2d(-20,20);
glEnd();
glBegin(GL_QUADS);
glColor3f(2,0,2);
glVertex2d(10,40);
glVertex2d(20,40);
glVertex2d(20,20);
glVertex2d(10,20);
glEnd();
glBegin(GL_QUADS);
glColor3f(0,0,0);
glVertex2d(-15,30);
glVertex2d(-10,30);
glColor3f(1,1,1);
glVertex2d(-10,20);
glVertex2d(-15,20);
glEnd();
glBegin(GL_QUADS);
glColor3f(0,0,0);
glVertex2d(10,30);
glVertex2d(15,30);
glColor3f(1,1,1);
glVertex2d(15,20);
glVertex2d(10,20);
glEnd();
glBegin(GL_POLYGON);
glColor3f(1,2.0,1.50);
glVertex2d(-20,10);
glVertex2d(20,10);
glColor3f(0,0,1.50);
glVertex2d(20,-10);
glVertex2d(0,-20);
glVertex2d(-20,-10);
glEnd();
glBegin(GL_POLYGON);
glColor3f(1,1,0);
glVertex2d(-15,15);
glVertex2d(15,15);
glColor3f(1,1,1);
glVertex2d(15,10);
glVertex2d(0,0);
glVertex2d(-15,10);
glEnd();
glBegin(GL_TRIANGLES);
glColor3f(1,1,0);
glVertex2d(-30,-30);
glVertex2d(-20,-30);
glVertex2d(-25,-40);
glEnd();
glBegin(GL_TRIANGLES);
glColor3f(1,1,0);
glVertex2d(-20,-30);
glVertex2d(-10,-30);
glVertex2d(-15,-40);
glEnd();
glBegin(GL_TRIANGLES);
glColor3f(1,1,0);
glVertex2d(10,-30);
glVertex2d(20,-30);
glVertex2d(15,-40);
glEnd();
glBegin(GL_TRIANGLES);
glColor3f(1,1,0);
glVertex2d(20,-30);
glVertex2d(30,-30);
glVertex2d(25,-40);
glEnd();
glBegin(GL_POLYGON);
glColor3f(0,0,1);
glVertex2d(25,30);
glVertex2d(45,30);
glColor3f(0,0,3.75);
glVertex2d(45,0);
glVertex2d(35,-20);
glVertex2d(25,0);
glEnd();
glBegin(GL_POLYGON);
glColor3f(0,0,1);
glVertex2d(-25,30);
glVertex2d(-45,30);
glColor3f(0,0,3.75);
glVertex2d(-45,0);
glVertex2d(-35,-20);
glVertex2d(-25,0);
glEnd();
}
float x = 0;
float y = 0;
float z = 0;
void Display()
{
glClear
(GL_COLOR_BUFFER_BIT);
glPushMatrix();
glTranslatef(x,y,z);
drawQuad();
glPopMatrix();
glFlush();
}
void mouse(int button, int state, int xmouse, int ymouse)
{
if (button == GLUT_LEFT_BUTTON && state == GLUT_DOWN)
{
x
= xmouse - (w/2);
y
= (h/2) - ymouse;
}
}
void motion (int xmouse, int ymouse)
{
x=xmouse-(w/2);
y=(h/2)-ymouse;
}
void timer (int value)
{
glutPostRedisplay();
glutTimerFunc(10,timer,0);
}
void main (int argc, char **argv)
{
glutInit (&argc, argv);
glutInitDisplayMode
(GLUT_DEPTH | GLUT_SINGLE | GLUT_RGBA);
glutInitWindowPosition(100,100);
glutInitWindowSize
(w,h);
glutCreateWindow ("AFTINA
NI'MA ROSYADA");
gluOrtho2D(-w/2,
w/2, -h/2, h/2);
glutDisplayFunc(Display);
glutTimerFunc(1000,timer,0);
glutMouseFunc(mouse);
//glutSpecialFunc(mySpecialKeyboard);
glutMotionFunc(motion);
glutMainLoop();
}
|
1.1.1
Output

Komentar
Posting Komentar