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

Video games, why do video game characters look better today?

why do video game characters look better today?

Basic graphics and mouse events, For this assignment, you will program a ga...

For this assignment, you will program a game called Pig. Pig is a two-player game where players compete to be the first to reach (or surpass) 100 points. Pig usually involves playe

Derive the single combined transformation matrix, A 2D geometric shape is r...

A 2D geometric shape is rotated about a point with coordinates (1,2)  by 90°  in a clockwise direction.  Then, the shape is scaled about the same point in the x-coordinate by 2 tim

Dv encoder type 1, DV Encoder Type 1 : The video and audio streams are tog...

DV Encoder Type 1 : The video and audio streams are together interfaces by standard DV bit stream. Such format is fully supported through DirectShow which accepts this interleaved

Area subdivision method for hidden surface removal, Q.  Write a short note...

Q.  Write a short note on area subdivision method for hidden surface removal.   Ans. Area Subdivision This technique for hidden- surface removal is essentially an image- spac

Reflection, Determine the transformation matrix for the reflection, Compute...

Determine the transformation matrix for the reflection, Computer Graphics

Vertices of bezier curve find out 3 points on bezier curve, Specified p 0 ...

Specified p 0 (1, 1): p 1 (2, 3); p 2 (4, 3); p 3 (3, 1) as vertices of Bezier curve find out 3 points on Bezier curve? Solution : We consider Cubic Bezier curve as: P (

Types of animation systems - computer animation, Types of Animation Systems...

Types of Animation Systems - Computer Animation We have discussed above about the sequencing of animation is helpful in developing any animation. Such sequencing is more or le

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