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

Introduction to computer graphics, Introduction To Computer Graphics ...

Introduction To Computer Graphics Early man employed drawings to communicate even before he learnt to communicate, write or count. Incidentally, these earliest hierogly

Color histogram, A color histogram is a representation of the distribution ...

A color histogram is a representation of the distribution of colors in an image. For digital images, a color histogram represents the number of pixels that have colors in each of a

Line generation algorithms - graphic primitives, Line Generation Algorithms...

Line Generation Algorithms - Graphic Primitives In previous section we have discussed the case of frame buffer, here information regarding the image to be projected upon the

Define the term avatars- animation, Define the term Avatars- Animation ...

Define the term Avatars- Animation Avatars are another instance of animation. These are frequently used to represent people either in 3-D (as used in computer games) and in 2-D

Cathode ray tube - graphics hardware, Cathode Ray Tube - Graphics Hardware ...

Cathode Ray Tube - Graphics Hardware Cathode Ray Tube: this is a refreshing display device. The idea of a refreshing display is depicted pictorially is given as: In fact

Engineering-applications for computer animation, Engineering: CAD has alwa...

Engineering: CAD has always been an imperative tool in industry. For illustration in automobile design, CAD could be utilized to model a car. Although with the advent of computer

Bezier surfaces - modeling and rendering, Bezier Surfaces - Modeling and Re...

Bezier Surfaces - Modeling and Rendering Two sets of Bezier curve can be utilized to design an object surface by identifying by an input mesh of control points. The Bézier su

Touch panels - input and output devices, Touch Panels - Input and output de...

Touch Panels - Input and output devices It allows displayed screen or object positions to be selected along with the touch of the finger and is also termed as Touch Sensitive

Opengl, difference between gl,glu and glut

difference between gl,glu and glut

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