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

Passive computer animations - types of computer animation, Passive Computer...

Passive Computer Animations: That has no option for users to utilize computer graphics today is mostly interactive for example: movies. Frame animation is non-interactive anim

Hue and saturation, Hue and Saturation: A light source produced by a sun o...

Hue and Saturation: A light source produced by a sun or electric bulb emits all frequencies within the visible range to give white light. When this light is incident upon an objec

Modelling and rendering a surface, Modelling and Rendering a surface Com...

Modelling and Rendering a surface Common practice in modelling and rendering a surface is to approximate it by a polygonal surface.  By a polygonal surface we mean a surface whi

Differences, difference between vecgen and breshnam algorithm

difference between vecgen and breshnam algorithm

Objectives-introduction to computer graphics, Objectives After complet...

Objectives After completing this section, you must be familiar with: explain computer graphics, its characteristics and features; Conversations about applicat

Method to draw an object by using four bézier curves, Suggest a method to d...

Suggest a method to draw an object as in figure using four Bézier curves of suitable degree Answer: Employ four quartic Bézier curves with the endpoint of one as the initial poi

Animation, name some of the standard motion in key frames

name some of the standard motion in key frames

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

Printing press discovered in 16th century, Printing Press discovered in 16t...

Printing Press discovered in 16th century: Books provided more role models & multiple perspectives. Exposure to books demanded that learners employ critical thinking to r

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