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

Briefly explain modes and switches, Question 1 Write a note on: Audio Spec...

Question 1 Write a note on: Audio Spectrum & Audio Waveform Question 2 What is high dynamic range color? Explain gradient color Question 3 Describe Time-Remapping

Applications for computer animation-physics, Normal 0 false f...

Normal 0 false false false EN-US X-NONE X-NONE

Z-buffer, describe z-buffer algorithm removing hidden surface

describe z-buffer algorithm removing hidden surface

Crt, refreh buffer

refreh buffer

Reflection and types of reflection, Reflection and Types of Reflection ...

Reflection and Types of Reflection Reflection and its types:   Reflection: this is the phenomenon of bouncing back of light; such phenomenon obeys laws of Reflec

What is the purpose behind the staircase effect, 1. What is the purpose be...

1. What is the purpose behind the Staircase effect? Ans. The approximation concerned in the calculation for finding of pixel position concerned in the display of lines and th

Key frame systems - computer animation, Key Frame Systems - computer animat...

Key Frame Systems - computer animation This method is for low-level motion control. In fact these systems comprise languages that are designed simply to produce the in-between

Xy-shear about the origin - 2-d and 3-d transformations, xy-Shear about the...

xy-Shear about the Origin - 2-d and 3-d transformations Suppose an object point P(x,y) be moved to P'(x',y') as a outcome of shear transformation in both x- and y-directions a

Limitations of cohen sutherland line clipping algorithm, Limitations of Coh...

Limitations of Cohen Sutherland line clipping Algorithm The algorithm is merely applicable to rectangular windows and not to the other convex shaped window. Consequently, a

Computer graphics, diffrence between vecgen and bresenham'' s algorithams

diffrence between vecgen and bresenham'' s algorithams

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