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

Notes for specular reflection - polygon rendering, Notes for Specular refl...

Notes for Specular reflection (1) In addition to diffuse reflection, light sources produce highlights or bright spots termed as specular reflection. Such highlighting is extre

Convert the intensity value of the current pixel, Step1:  Read a text file ...

Step1:  Read a text file which we want to hide. Step2:  Transform it into an array of its binary value. Step3: Transform this array into its equivalent one dimensional array

Image processing process, Image Processing Process Images are the last ...

Image Processing Process Images are the last product of most processes in computer graphics. The ISO that is International Standards Organization explains computer graphics as

CRT, why there is coating of phosphorous on CRT screen?

why there is coating of phosphorous on CRT screen?

Bezier surfaces - modeling and rendering, Bezier Surfaces - Modeling and Re...

Bezier Surfaces - Modeling and Rendering Two sets of Bezier curve can be utilized to design an object surface by identifying by an input mesh of control points. The Bézier su

Combined consequence of ambient and diffused reflection, Combined consequen...

Combined consequence of ambient and diffused reflection At this time the resulting intensity I will be the total sum of the intensities in case 8.3.2 and 8.3.3 we find that:

Polygon meshes - modeling and rendering, Polygon Meshes - Modeling and Rend...

Polygon Meshes - Modeling and Rendering A polygonal surface to be sketched may not be easy and may have enormous curls and curves. Illustration: a crushed piece of paper or cr

Target market before doing a design work, Question: (a) Explain the i...

Question: (a) Explain the importance of knowing and understanding your target market before doing a design work. Use example(s) to enhance your answer. (b) Describe the

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