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

Categories of orthographic projection, Categories of Orthographic Projectio...

Categories of Orthographic Projection Orthographic projection is additionally divided into Multi-view projection and axonometric projection, depending upon where the direction

Types of animation systems - computer animation, Types of Animation Systems...

Types of Animation Systems - Computer Animation We have discussed above about the sequencing of animation is helpful in developing any animation. Such sequencing is more or le

Entertainment - applications for computer animation, Entertainment - Applic...

Entertainment - Applications For Computer Animation Advertising, Games, Film, Video, Television, Multimedia are various of the entertainment fields wherein computer animation h

Vecgen algorithm and bresenham line, what is vecgen algorithm and bresenha...

what is vecgen algorithm and bresenham linequestion..

Application of coherence in visible surface detection method, explainapplic...

explainapplication of coherence in visible surface detection method

Chain of responsibility and the iterator patterns, QUESTION (a) Conside...

QUESTION (a) Consider the observer, façade, chain of responsibility and the iterator patterns. i) Give detailed descriptions and draw their structures. ii) Explain the in

Program to implement procedures or functions, The goal of this assignment i...

The goal of this assignment is to implement procedures/functions using x86 assembly. In addition to implementing procedures/functions, this assignment requires to pass arguments us

Registers, explain the registers used in video controller

explain the registers used in video controller

Cyrus beck algorithm - line clipping algorithm, Cyrus Beck Algorithm - Line...

Cyrus Beck Algorithm - Line Clipping Algorithm Cyrus Beck Line clipping algorithm is actually, a parametric line-clipping algorithm. The term parametric means that we requi

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