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 describe the variants of the interaction model, Question: a) Th...

Question: a) The implications of transparency are a major influence on the design of system software. There are eight forms of transparency. Name and give a small description o

Cel animation - computer animation, Cel Animation - Computer Animation ...

Cel Animation - Computer Animation Making an animation by using this method, all characters are drawn on a separate piece of transparent paper. Also a background is drawn on a

Description and measurement of circadian rhythms, The description and measu...

The description and measurement of circadian rhythms. Describe the standard method used for the recording and graphing of behavioral rhythms in animals, especially the use

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

Determine the transformation matrix for the reflection, Computer Graphics

Scan conversion, what are the advertising effects of scan conversion

what are the advertising effects of scan conversion

Numerically-controlled machines - cad and cam, Numerically-Controlled Machi...

Numerically-Controlled Machines: Prior to the development of Computer-aided design, the manufacturing world adopted elements controlled through numbers and letters to fi

Morphing - key frame systems, Morphing - Key Frame Systems Transformati...

Morphing - Key Frame Systems Transformation of object shapes from one form to the other is termed as morphing as short form of metamorphism. This method can be applied to any o

Time based and presentation tools, Time Based and Presentation Tools In...

Time Based and Presentation Tools In such authoring systems, components and events are organized beside a timeline, along with resolutions as high as 1/30 second. Time based to

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