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

How does the z-buffer algorithm find out which surfaces, Illustration 1: H...

Illustration 1: How does the z-buffer algorithm find out which surfaces are hidden? Solution : Depth or Z-buffer algorithm employs a two buffer area each of two-dimensional ar

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

Vertical retrace - display devices, Vertical retrace - Display Devices ...

Vertical retrace - Display Devices In a refresh CRT monitor, the time it takes for an electron beam to return to the top, left most point on the monitor after refreshing all ho

Student, hi I need help with photoshop

hi I need help with photoshop

Pixel paint, PIXEL PAINT: The pixel paint file format permits a document t...

PIXEL PAINT: The pixel paint file format permits a document to be opened in the pixel paint and pixel paint professional graphics application. Such format permits you to identify

Different types of simulating motion - computer animation, Different types ...

Different types of Simulating Motion - Computer Animation Here we discuss different ways of simulating motion as: a. Zero Acceleration or Constant Speed b. No

Surface of revolution - modeling and rendering, Surface of Revolution - Mod...

Surface of Revolution - Modeling and Rendering In the previsions sections we have learned different type of techniques of generating curves, although if we wish to generate a

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