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

Application of sutherland hodgman polygon clipping, For good understanding ...

For good understanding of the application of the rules specified above see the following figure, where the shaded region demonstrates the clipped polygon. Fi

Alias wavefront - softwares for computer animation, Alias Wavefront - Softw...

Alias Wavefront - Softwares for Computer Animation Alias is one of the highest computer animation packages out there. Alias was formed by the company which used to be Alias, a

Explain different linear methods for noise cleaning, Question 1 Describe t...

Question 1 Describe the process of formation of image in human eye Structure of the Human Eye Image formation in the Eye Brightness Adaptation and Discrimination

Hypermedia, Hypermedia: it is a superset of hypertext. Hypermedia document...

Hypermedia: it is a superset of hypertext. Hypermedia documents comprise links not only to the other pieces of text, although also to other forms of media: sounds and images and m

Explain the lofting method in maya, QUESTION 1: a) Draw a Bezier curve ...

QUESTION 1: a) Draw a Bezier curve showing the following components i. hull ii. curve CV iii. span iv. start and end point b) Maya provides highly effective tools for all t

Describe digital printing and prepress, Question 1: (a) Describe Digita...

Question 1: (a) Describe Digital Printing and Prepress? Also state the advantages and disadvantages of Digital printing? Question 2: (a) What are the three most import

Character generation, Which is the most usable and frequent method to gener...

Which is the most usable and frequent method to generate a character?

Interactive computer animation, Interactive Computer Animation Interac...

Interactive Computer Animation Interactive Computer Animation that is interactively utilized by users for example: games. Sprite animation is interactive and utilized broadly

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