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

Do we have need of to generate full circumference of circle, 1.   Do we hav...

1.   Do we have need of to generate the full circumference of the circle utilizing the algorithm or  can we can produces it in a quadrant or octant only and after that utilization

Oblique projection, find the transformation and draw the cube for cavalier...

find the transformation and draw the cube for cavalier and cabinet with theta = 37 degree

Construction of an isometric projection - transformation, Construction of a...

Construction of an Isometric Projection - Transformation In this projection, the direction of projection i.e. d = (d 1 ,d 2 ,d 3 ) makes an identical angles with all the 3-pr

Adobe flash - softwares for computer animation, Adobe flash - Softwares for...

Adobe flash - Softwares for computer animation Formerly, it was termed as Macromedia flash and prior to this, this was Futuresplash. This is in fact an IDE that refers to both

2d clipping, What is 2d clipping in computer graphics

What is 2d clipping in computer graphics

Mapping of a fraction -windowing transformations, Mapping of a Fraction -Wi...

Mapping of a Fraction -Windowing Transformations The mapping of a fraction of a world coordinate scene to device coordinates is considered to as Viewing Transformation. In com

Various ways of simulating motion, Various ways of simulating motion:- ...

Various ways of simulating motion:- -        Zero Acceleration (Constant Speed)           -        Non-Zero Accelerations -        Positive accelerations

Graphics hardware - computer aided design, Graphics Hardware - Computer aid...

Graphics Hardware - Computer aided Design Despite with which advance graphic software you are working along with, if your output device is not well or hardware handling which

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