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

Disadvantage of the raster scan display device, Disadvantage of the Raster ...

Disadvantage of the Raster Scan Display Device The major disadvantage of the raster scan is the jagged nature of the lines, happening from the information that the pixels are

Determine the steps uses in cohen sutherland line clipping, Steps uses in t...

Steps uses in the Cohen Sutherland Line Clipping Algorithm are: Figure: Steps for Cohen Sutherland Line Clipping STEP 1: Input:  x L , x R , y T , y B

Multiple channels, Multiple Channels: As the 1990s, movie theatres have up...

Multiple Channels: As the 1990s, movie theatres have upgraded their sound systems to surround sound systems which carry more than two channels. The most well liked illustrations a

Identify what the use of homogenous co-ordinates, 1. Why are homogeneous co...

1. Why are homogeneous co-ordinates utilized in computer vision? I want to identify what the use of homogenous co-ordinates makes possible in terms of camera models. 2. Consider

Raster & Vector display, what is refresh buffer/ identify the content and o...

what is refresh buffer/ identify the content and organisation of the refresh buffer for the case of raster display and vector display.

Medicine-applications for computer animation, Medicine: this is very tough...

Medicine: this is very tough for a doctor to get inside a living human body and to observe what is occurrence. Computer animation once again comes in very helpful. Every particula

Color Histograms - Scene Categories, How can I perform feature extraction o...

How can I perform feature extraction on images of different classes? How to obtain a vector of each class that contains its features?

Illustration, mcqs of illustration in nts test

mcqs of illustration in nts test

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