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

What is view distance, What is view distance?  The view plane normal ve...

What is view distance?  The view plane normal vector is a directed line segment from the view plane to the view reference point. The length of this directed line segment is ref

What is multimedia, Question 1 What is Multimedia? Explain sound multimedi...

Question 1 What is Multimedia? Explain sound multimedia element Question 2 Explain any three elements of drawings Question 3 Explain any three types of drawing Quest

3D transformation, what are the steps involved in 3D transformation

what are the steps involved in 3D transformation

Advantage and disadvantage of plasma panel-graphics hardware, Advantage and...

Advantage and Disadvantage of Plasma panel - Graphics Hardware Advantage 1. Slim design as Wall mountable 2. Larger than LCD screens Disadvantage

Briefly describe what you understand by smoothing, Question: (a) List a...

Question: (a) List and explain different types of lights that can be used in After Effects. (b) How is the density of dots between the boxes in a motion path related to th

Polygonalization of the surface, Remember in polygonalization of the surfac...

Remember in polygonalization of the surface, following rules must be followed. Any two polygons  (i)  share a common edge,   (ii)  Share a common vertext,  (iii)  Arc disj

Crt, explain the working procedure of crt digram

explain the working procedure of crt digram

Types of polygon tables curves and surfaces, Types of Polygon tables curves...

Types of Polygon tables curves and surfaces Attribute tables: This table has object information as transparency, surface reflexivity, texture features of an object in the vi

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