#include #include #include #include using std::cin; using std::cout; using std::endl; void init (void) { glClearColor(0,0,0,0); gluPerspective(60,1,.1,1000); gluLookAt(2.0,2.0,2.0 ,0,0,0, -1,1,0);//up vector } void myDisplay(void){ cout<<"Hello"; glClear(GL_COLOR_BUFFER_BIT); glBegin(GL_LINES); //first box glColor3f(1.0,0,0); glVertex3f(0,0,0); glVertex3f(0.5,0,0); glColor3f(1,0,0); glVertex3f(0,0,0); glVertex3f(0,0.5,0); glColor3f(1,0,0); glVertex3f(0.5,0,0); glVertex3f(0.5,0.5,0); glColor3f(1,0,0); glVertex3f(0,0.5,0); glVertex3f(0.5,0.5,0); glEnd(); const double box2off = 0.2; glBegin(GL_LINES); //connecting lines glColor3f(1,0,0); glVertex3f(0,0.5,0); glVertex3f(box2off,box2off+0.5,0); glColor3f(1,0,0); glVertex3f(0.5,0,0); glVertex3f(box2off+0.5,box2off,0); glColor3f(1,0,0); glVertex3f(0,0,0); glVertex3f(box2off,box2off,0); glColor3f(1,0,0); glVertex3f(0.5,0.5,0); glVertex3f(box2off+0.5, box2off+0.5,0); glEnd; glBegin(GL_LINES); //second box glColor3f(1.0,0,0); glVertex3f(box2off,box2off,0); glVertex3f(box2off + 0.5,box2off,0); glColor3f(1,0,0); glVertex3f(box2off,box2off,0); glVertex3f(box2off,box2off+0.5,0); glColor3f(1,0,0); glVertex3f(box2off+0.5,box2off,0); glVertex3f(box2off+0.5,box2off+0.5,0); glColor3f(1,0,0); glVertex3f(box2off, box2off+0.5,0); glVertex3f(box2off+0.5,box2off+0.5,0); glEnd(); glutSwapBuffers(); } void key(unsigned char k, int x, int y) { cout<<"key pressed "<