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

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

What is surface patch, What is surface patch?  A single surface element...

What is surface patch?  A single surface element can be explained as the surface traced out as two parameters (u, v) take all possible values between 0 and 1 in a two-parameter

Scientific visualization, Scientific Visualization This is complex for...

Scientific Visualization This is complex for the human brain to create sense out of the large volume of numbers produced through a scientific computation. Statistical and nume

Translation - 2-d and 3-d transformations, Translation - 2-d and 3-d Transf...

Translation - 2-d and 3-d Transformations It is the process of changing the position of an object. Suppose an object point P(x,y)=xI+yJ be moved to P'(x',y') by the specified

Midpoint circle generation algorithm - 2d shape primitives, Midpoint Circle...

Midpoint Circle Generation Algorithm   Just as a line drawing algorithm approximates infinite number of points on a line segment by only a finite number of pixels, a circle dra

Other video file formats, Other Video File Formats: There are several the ...

Other Video File Formats: There are several the other formats for storing video in the digital formats. Such formats are usually used for the storage and viewing of video through

Improving gif compression, Improving GIF Compression: Features of LZW comp...

Improving GIF Compression: Features of LZW compression can be used to enhance its efficiency and thereby decrease the size of your graphic interchange format graphics. The strateg

Panning and zooming a component, Panning and zooming Components (such as yo...

Panning and zooming Components (such as your Polybounce or Animation) is simply a matter of reFrameing the world window. To pan right or left horizontally, one shifts it in the pos

Image classification, The image classification is the process to categorize...

The image classification is the process to categorize images into one of several classes or categories. In this project, there are seven categories (Piano, Kangaroo, Strawberry, Su

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