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

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

Crt, working of crt

working of crt

Voltage or electro-magnetic field tablet and pointer, (a)  Voltage or Elect...

(a)  Voltage or Electro-Magnetic Field Tablet and Pointer: This has a grid of wires, embedded in the tablet surface along with various voltages or magnetic fields consequent to va

Implement the scan line polygon fill algorithm, Implement the Scan line pol...

Implement the Scan line polygon fill algorithm for any arbitrary polygon in C-language and then use your code to fill each of the following type of polygon. i)  Convex polygon

Polygon or area clipping algorithm, Polygon or Area Clipping Algorithm - Su...

Polygon or Area Clipping Algorithm - Sutherland-Hodgman Algorithm There are different algorithms as Liang-Barsky, Line clipping, Weiler-Atherton Polygon Clipping,

#title., what is the working procedure of CRT with diagram

what is the working procedure of CRT with diagram

Trivial rejection case of cohen sutherland line clippings, Trivial Rejectio...

Trivial Rejection Case of cohen sutherland line clippings Case: it  is Trivial Rejection Case; if the logical intersection (AND) of the bit codes of the end points P, Q of

Ray tracing - polygon rendering and ray tracing methods, Ray Tracing - Poly...

Ray Tracing - Polygon Rendering and Ray Tracing Methods Basically Ray tracing is an exercise that is performed to attain the realism in a scene. In easy way Ray Tracing is a w

Variation of intensity - modeling and rendering, Variation of Intensity - M...

Variation of Intensity - Modeling and Rendering According to the phong model the variation of Intensity (I) along with α (since I α cos n α) is: i) for shiny surface (

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