Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdlib.h>
- #include <windows.h>
- #include <GL/glut.h>
- #include <iostream>
- using namespace std;
- float angle = 0;
- float t,s=0.5,m=0;
- void myinit(void){
- glClearColor(1.0,1.0,1.0,0.0);
- glMatrixMode(GL_PROJECTION);
- glLoadIdentity();
- glOrtho(0.0,1.0,0.0,1.0,-1.0,1.0);
- }
- void keyboard(unsigned char key, int x, int y){
- if(key==27)
- {
- exit(0);
- }else if(key == 82 || key == 114){
- angle-=0.1;
- glRotatef(angle,0,0,1);
- glutPostRedisplay();
- }else if(key == 84 || key == 116 )
- {
- t+=0.01;
- glTranslatef(t,0,0);
- glutPostRedisplay();
- }else if(key == 43){
- s+=0.01;
- // m-=0.1;
- // glTranslatef(m,m,0.0);
- glScalef(s,s,0);
- glutPostRedisplay();
- }
- (void)(x);
- (void)(y);
- }
- void hut(void){
- glClear(GL_COLOR_BUFFER_BIT);
- glBegin(GL_TRIANGLE_FAN);
- glVertex3f(0.5,0.4,0.0);
- glVertex3f(0.42,0.5,0.0); // GREEN
- glVertex3f(0.44,0.5,0.0);
- glColor3f(1.5,1.0,0.0);
- glVertex3f(0.46,0.5,0.0);
- glColor3f(0.25,0.0,0.0);
- glVertex3f(0.57,0.5,0.0);
- glEnd();
- glFlush();
- glColor3f(1.5,1.0,0.0);
- glBegin(GL_TRIANGLE_FAN);
- glVertex3f(0.44,0.55,0.0);
- glVertex3f(0.42,0.5,0.0);
- glVertex3f(0.46,0.5,0.0);
- glColor3f(0.25,0.0,0.0);
- glVertex3f(0.48,0.55,0.0);
- glEnd();
- glColor3f(1.5,1.0,0.0);
- glBegin(GL_TRIANGLE_FAN);
- glVertex3f(0.48,0.55,0.0);
- glVertex3f(0.46,0.5,0.0);
- glVertex3f(0.50,0.5,0.0);
- glColor3f(0.25,0.0,0.0);
- glVertex3f(0.52,0.55,0.0);
- glEnd();
- glColor3f(1.5,1.0,0.0);
- glBegin(GL_TRIANGLE_FAN);
- glVertex3f(0.52,0.55,0.0);
- glVertex3f(0.50,0.5,0.0);
- glVertex3f(0.54,0.5,0.0);
- glColor3f(0.25,0.0,0.0);
- glVertex3f(0.56,0.55,0.0);
- glEnd();
- glColor3f(1.5,1.0,0.0);
- glBegin(GL_TRIANGLE_FAN);
- glVertex3f(0.56,0.55,0.0);
- glVertex3f(0.54,0.5,0.0);
- glVertex3f(0.57,0.5,0.0);
- glEnd();
- glFlush();
- }
- int main(int argc,char** argv){
- glutInit(&argc,argv);
- glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);
- glutInitWindowPosition(100,100);
- glutInitWindowSize(640,480);
- glutCreateWindow("Polygon with viewport");
- myinit();
- glutDisplayFunc(hut);
- glutKeyboardFunc(keyboard);
- glutMainLoop();
- }
Add Comment
Please, Sign In to add comment