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 we create virtual reality images for use on a computers, How we create ...

How we create virtual reality images for use on a computer system When a virtual tour of, for instance, a house is shown on a website the images need to be first created and th

Dissimilarity between the printer and the plotter, Dissimilarity between th...

Dissimilarity between the Printer and the Plotter 1)  Plotters print their output through moving a pen across the surface of paper's piece. It implies that plotters are lim

Define the meaning of abbreviations of cmyk and rgb, QUESTION You are e...

QUESTION You are employed as a graphics designer in an advertising agency and recently completed a brochure artwork for a client. You need to send the file for printing before

Rotation - 2-d and 3-d transformations, Rotation - 2-d and 3-d transformati...

Rotation - 2-d and 3-d transformations Given a 2-D point P(x,y), that we want to rotate, along with respect to an arbitrary point A(h,k). Suppose P'(x'y') be the effect of ant

Basic approaches for visible surface determination, Basic Approaches for Vi...

Basic Approaches for Visible Surface Determination There are two basic approaches for visible-surface determination, as per if they deal along with their projected images or a

Ambient reflection-polygon rendering & ray tracing methods , Ambient Reflec...

Ambient Reflection-Polygon Rendering & Ray Tracing Methods When we go for the examiner of light effects, so surroundings play a significant role and it is assumed as there

Boundary fill algorithm - output primitives, Boundary Fill Algorithm Bo...

Boundary Fill Algorithm Boundary fill algorithm is suitable when the boundary has single color while flood fill algorithm is more suitable for filling regions which are defined

Advantages of jpeg images, Advantages of JPEG Images Huge compressi...

Advantages of JPEG Images Huge compression ratios mean sooner download speeds. JPEG produces outstanding results for main photographs and complicated images. JPEG s

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