rendered paste body#include <GL/glut.h>
#include <string>
#include <iostream>
using namespace std;
double WIDTH = 400, HEIGHT = 400;
double HMIN = -WIDTH/2, HMAX = WIDTH/2, KMIN = -HEIGHT/2, KMAX = HEIGHT/2;
void display() {
glBegin(GL_QUADS);
glColor3f(1, 1, 1);
glVertex3f(0, 10, 0);
glColor3f(10, 10, 0);
glVertex3f(10, 0, 0);
glVertex3f(0, 1, 0);
glEnd();
}
glPostRedisplay();
glutSwapBuffers();
}
void keyboard(unsigned char key, int x, int y) {
}
void special(unsigned char key, int x, int y) {
if(key==GLUT_KEY_RIGHT) {
glutTranslate(10,0,0);
}
if(key==GLUT_KEY_LEFT) {
glutTranslate(-10,0,0);
}
if(key==GLUT_KEY_UP) {
glutTranslate(0,10,0);
}
if(key==GLUT_KEY_DOWN) {
glutTranslate(0,-10,0);
}
}
int main(int argc, char** argv) {
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB);
glutInitWindowSize(WIDTH, HEIGHT);
glutInitWindowPosition(100, 100);
glutCreateWindow("Keyboard Input");
glClearColor(0, 0, 0, 0);
glColor3f(1, 1, 1);
glMatrixMode(GL_MODELVIEW);
glOrtho(HMIN, HMAX, KMIN, KMAX, -1, 1);
glClear(GL_COLOR_BUFFER_BIT);
glutKeyboardFunc(keyboard);
glutSpecialFunc(special);
glutDisplayFunc(display);
glutMainLoop();
return 0;
}