Write a code to continuously rotate square about pivot point, Computer Graphics

Assignment Help:

Write a code to continuously rotate a square about a pivot point. 

  #include  

static GLfloat rotat=0.0;  

void init(void);

void display(void);

void reshape(int w, int h);

void rotate(void);  

int main()

{      

        glutInitDisplayMode(GLUT_RGB|GLUT_DOUBLE);

        glutInitWindowSize(500,500);

        glutInitWindowPosition(100,100);

        glutCreateWindow("Moving squares");

        init();

        glutDisplayFunc(display);

        glutReshapeFunc(reshape);

        glutIdleFunc(rotate);

        glutMainLoop();

}  

void init(void){ 

glClearColour(0.0,0.0,0.0,0.0);

}  

void display(void)

{  glClear(GL_COLOUR_BUFFER_BIT);

   glPushMatrix(); //Push the transformation matrix to stack 

   glTranslatef(-50.0f,-50.0f,0.0); 

   //Translate the pivot point to origin

   glRotatef(rotat,0.0,0.0,1.0); // Rotate about origin

   glTranslatef(50.0f,50.0f,0.0); 

   //Translate pivot point back to its position

   glColour3f(0.0,0.0,1.0); //Set colour of square

   glRectf(-50.0,-50.0,50.0,50.0); //Draw square 

   glPopMatrix(); //Pop the matrix from stack

   glutSwapBuffers(); // Swap buffers

}  

void reshape(int w, int h)

{        glViewport(0,0,(GLsizei)w,(GLsizei)h);

        glMatrixMode(GL_PROJECTION);

        glLoadIdentity();

        glOrtho(-250.0,250.0,-250.0,250.0,-1.0,1.0);

        glMatrixMode(GL_MODELVIEW);

        glLoadIdentity();

}  

void rotate(void)

{     rotat+=0.1; //Continuously increse the rotation angle by 0.1

                if(rotat>360.0)

                        rotat-=360.0;

        glutPostRedisplay(); //send the current window for

redisplay

}

 


Related Discussions:- Write a code to continuously rotate square about pivot point

How to control the contents of the video buffer, OBJECTIVE Since graphic...

OBJECTIVE Since graphics plays a very important role in modern computer application, it is important to know more information about its hardware and software operations. Despite

Explain difference between impact and non-impact printers, What is the diff...

What is the difference between impact and non-impact printers?  Impact printer press produced character faces against an inked ribbon on to the paper. A line printer and dot-ma

Distinguish between mono and stereo sound, Problem: (a) Distinguish be...

Problem: (a) Distinguish between mono and stereo sound? (b) Calculate the size of a 5 minutes mono sound file of CD quality and with a 16 -bit rate. (c) With reference

70, how you doing the graphic?

how you doing the graphic?

What is homogeneous coordinate, What is homogeneous coordinate? Discuss the...

What is homogeneous coordinate? Discuss the composite transformation matrix for two successive translations and scaling. In design and picture formation process, many times

Scan-line method, In contrast to depth-buffer method, here we identify one ...

In contrast to depth-buffer method, here we identify one surface at one time, scan-line method deals along with multiple surfaces. Since it processes each scan-line at one time, al

Dda and bresenhem line drawing algorithm, when dda algorithm is more effici...

when dda algorithm is more efficient than bresenhem line drawing algorithm

What is a model sheet?, Question 1 Briefly explain the twelve principles o...

Question 1 Briefly explain the twelve principles of animation Question 2 Explain the methods to set-up pre and post-infinity curves Question 3 What is a model sheet? Exp

Properties of bezier curves - modeling and rendering, Properties of Bezier ...

Properties of Bezier Curves - modeling and rendering A very helpful property of a Bezier curve is that it always passes via the first and last control points. Such the bounda

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd