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

Multimedia applications, Multimedia Applications: The term itself clarifies...

Multimedia Applications: The term itself clarifies; this is a combination of various Medias of communication as text, graphic, audio and so on. Currently this field of multimedia i

Explain what you understand by corporate style guide, Question 1: (a) ...

Question 1: (a) Explain the term ‘logo' with the use of an example. (b) Explain in detail what three basic questions you need to ask yourself before creating a logo. (c) You

What is a spline, What is a spline?  To produce a smooth curve by a des...

What is a spline?  To produce a smooth curve by a designed set of points, a flexible strip called spline is used. Like spline curve can be mathematically explained with a piece

Definition of computer animation, Definition of Computer Animation A ti...

Definition of Computer Animation A time dependence phenomenon for imparting visual modifies in any scene as per to any time sequence, the visual modifies could be incorporated

Describe fully the term preflight, Question: Adobe InDesign software ...

Question: Adobe InDesign software is used to create works such as posters, flyers, brochures, magazines and books. Designers and graphics production artists are the principa

What you mean by parallel projection, What you mean by parallel projection?...

What you mean by parallel projection?  Parallel projection is one in which z coordinates is discarded and parallel lines from every vertex on the object are extended unless the

Common principles of ray tracing, Common Principles of Ray Tracing Bas...

Common Principles of Ray Tracing Based upon the nature or attributes of the surface given by the user, the subsequent effects are implemented, as per to rules of optics:  a

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