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

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

Liquid crystal display - graphics hardware, Liquid Crystal Display - Graphi...

Liquid Crystal Display - Graphics Hardware It is a type of display utilized in digital watches and several portable computers. These work along with polarized ambient as outsi

Numerically-controlled machines - cad and cam, Numerically-Controlled Machi...

Numerically-Controlled Machines: Prior to the development of Computer-aided design, the manufacturing world adopted elements controlled through numbers and letters to fi

Magnify a triangle with vertices, Magnify a triangle with vertices A = (1,1...

Magnify a triangle with vertices A = (1,1), B = (3,1) and C = (2,2) to twice its size in such a way that A remains in its original position.  Answer: You need to apply scaling b

Graphics tablet - cad and cam, Graphics Tablet - CAD and CAM We need ...

Graphics Tablet - CAD and CAM We need to know what we mean via tablet in computer terminology, before going into details on the graphic tablet, since in the other disciplines

Input and output devices - computer aided design, Input and Output Devices ...

Input and Output Devices - computer aided design Output and Input devices are quite significant for any software since an unsuitable selection of the concerned hardware may tu

Languge, what languge do computers speak

what languge do computers speak

Write a c-code for a user to draw a polygon object, Write a C-code for an i...

Write a C-code for an interactive program which allows a user to draw a polygon object in a window and then gives various choices of geometric transformations on the polygon.  Once

Determine general graphics system designed for a programmer, Explain the di...

Explain the differences among a general graphics system designed for a programmer and one designed for a specific application, such as architectural design? Basically, package

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