#include GLsizei winWidth = 640, winHeight = 480; float sqx = 200.0; float sqy = 50.0; float sqwid = 100; void displayFcn (void) { glClear (GL_COLOR_BUFFER_BIT); glColor3f (1.0, 1.0, 0.0); glRectf (sqx, sqy, sqx+sqwid, sqy+sqwid); glutSwapBuffers ( ); } void init(void) { glClearColor (0.0, 0.0, 1.0, 0.0); glMatrixMode (GL_PROJECTION); gluOrtho2D (0.0, winWidth, winHeight, 0.0); glMatrixMode (GL_MODELVIEW); } void moveRect(void) { } bool insideRect(int x, int y) { return 1; } void mouseButtons(int button, int state, int x, int y) { } void mouseDrag(int x, int y) { } void keyboard(unsigned char key, int x, int y) { } void main (int argc, char** argv) { glutInit (&argc, argv); glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB); glutInitWindowPosition (50, 100); glutInitWindowSize (winWidth, winHeight); glutCreateWindow ("Interactive Rectangle Program"); init(); glutDisplayFunc (displayFcn); glutMouseFunc (mouseButtons); glutKeyboardFunc (keyboard); glutMotionFunc (mouseDrag); /* glutIdleFunc(moveRect); glutTimerFunc(30, timer, 1); */ glutMainLoop ( ); }