Advertisement
Guest User

Untitled

a guest
Jun 23rd, 2017
51
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.58 KB | None | 0 0
  1. #include <GL/glut.h>
  2. #include <stdlib.h>
  3. #include <stdio.h>
  4.  
  5. void init(void){}
  6.  
  7. void display(void)
  8. {
  9. glClear(GL_COLOR_BUFFER_BIT);
  10. glColor3f (0.0, 1.0, 0.0);
  11. glPushMatrix();
  12. GLfloat vertices[] = {0.1,0.1,0.1, -0.1,0.1,0.1, -0.1,-0.1,0.1, 0.1,-0.1,0.1,
  13. 0.1,0.1,0.1, 0.1,-0.1,0.1, 0.1,-0.1,-0.1, 0.1,0.1,-0.1,
  14. 0.1,0.1,0.1, 0.1,0.1,-0.1, -0.1,0.1,-0.1, -0.1,0.1,0.1,
  15. -0.1,0.1,0.1, -0.1,0.1,-0.1, -0.1,-0.1,-0.1, -0.1,-0.1,0.1,
  16. -0.1,-0.1,-0.1, 0.1,-0.1,-0.1, 0.1,-0.1,0.1, -0.1,-0.1,0.1,
  17. 0.1,-0.1,-0.1, -0.1,-0.1,-0.1, -0.1,0.1,-0.1, 0.1,0.1,-0.1};
  18. glPolygonMode(GL_FRONT_AND_BACK, GL_LINE);
  19.  
  20. glEnableClientState(GL_VERTEX_ARRAY);
  21. glVertexPointer(3, GL_FLOAT, 0, vertices);
  22. glDrawArrays(GL_QUADS, 0, 24);
  23. glDisableClientState(GL_VERTEX_ARRAY);
  24. glPopMatrix();glFlush();
  25.  
  26. }
  27.  
  28. void keyboard(unsigned char key, int x, int y)
  29. {
  30. switch (key) {
  31. case 'z':
  32. glRotatef(5, 0, 0.0, 0.1);
  33.  
  34. glutPostRedisplay();
  35. break;
  36. case 'y':
  37. glRotatef(5,0,0.1,0);
  38. glutPostRedisplay();
  39. break;
  40. case 'x':
  41. glRotatef(5,0.1,0,0);
  42. glutPostRedisplay();
  43. break;
  44. case 27:
  45. exit(0);
  46. }
  47. }
  48.  
  49. int main(int argc, char** argv)
  50. {
  51. glutInit(&argc, argv);
  52. glutInitDisplayMode (GLUT_SINGLE | GLUT_RGB);
  53. glutInitWindowSize (400, 400);
  54. glutCreateWindow (argv[0]); init();
  55. glutKeyboardFunc (keyboard);
  56. glutDisplayFunc (display);
  57. glutMainLoop();
  58. return 0;
  59. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement