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

Role in education and training, Role in Education and Training:- A multime...

Role in Education and Training:- A multimedia presentation is an important way to introduce new concepts or described a new technology. Individuals determine it easy to understand

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,

Linear filtering concept -horizontal & vertical sobel filter, This question...

This question is about linear filtering concepts using the built in filtering functions (it is not about edge detection methods). Load an MRI image and perform the following: i.

Historical method – oral tradition, Historical method - Oral tradition: ...

Historical method - Oral tradition: Only the teacher was the source of information The teacher treated as a role model. The teacher was the main resource to meet indiv

Find the normalization transformation, Illustration: Find the normalizatio...

Illustration: Find the normalization transformation N that uses the rectangle W (1, 1), X (5, 3), Y (4, 5) and Z (0, 3) as a window and also the normalized device screen like the

Multimedia entertainment, Multimedia Entertainment: The field of ente...

Multimedia Entertainment: The field of entertainment uses multimedia extensively. One of the earliest and the most popular applications of multimedia are for games. Multimedi

Dv encoder type 2, DV Encoder Type 2: Encoder Type 2 generates a VfW compa...

DV Encoder Type 2: Encoder Type 2 generates a VfW compatible AVI file format. Such file has separate streams for audio and video and it can also be processed through DirectShow. T

Define the term multimedia, Question (a) Define the term Multimedia. ...

Question (a) Define the term Multimedia. (b) Describe any four important tools you know about for a virtual campus. (c) Following our discussion in our lecture list an

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