Advertisement
Guest User

Untitled

a guest
Oct 23rd, 2019
102
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.39 KB | None | 0 0
  1. //Code for drawing the head
  2. gl.glPushMatrix();
  3. gl.glBindTexture(GL_TEXTURE_2D, Textures.head.getTextureObject());
  4. gl.glColor3f( color[0], color[1], color[2]);
  5. gl.glTranslated(xcord + 0, ycord + 0, zcord + ARM_LENGTH + LEG_LENGTH + HEAD_DIMENSION/2.0);
  6. gl.glRotated( timeDependent * (+ 90), 1, 0,0);
  7. glut.glutSolidCube(HEAD_DIMENSION);
  8. gl.glPopMatrix();
  9.  
  10. //Drawing the body in hierarchical way
  11.  
  12. drawBody(gl, glu, glut, timeDependent, rotationAngle);
  13.  
  14. gl.glPopMatrix();
  15.  
  16. }
  17.  
  18. /** Drawing the gorilla body */
  19. private void drawBody(GL2 gl, GLU glu, GLUT glut, double timeDependent, double rotationAngle) {
  20. gl.glPushMatrix();
  21. gl.glBindTexture(GL_TEXTURE_2D, Textures.torso.getTextureObject());
  22. gl.glColor3f( color[0], color[1], color[2]);
  23. gl.glTranslated(xcord + 0, ycord + 0, zcord + (BODY_LENGTH/2.0) + BODY_LENGTH);
  24. gl.glScaled(0.4, (BODY_LENGTH/2.0), BODY_LENGTH);
  25. glut.glutSolidCube(1);
  26. gl.glPopMatrix();
  27.  
  28. //Drawing the legs and arms in hierarchical way
  29. drawArms(gl, glu, glut, timeDependent, rotationAngle);
  30. drawLegs(gl, glu, glut, timeDependent, rotationAngle);
  31. }
  32.  
  33. /** Drawing the legs*/
  34. private void drawLegs(GL2 gl, GLU glu, GLUT glut, double timeDependent, double rotationAngle) {
  35.  
  36. gl.glBindTexture(GL_TEXTURE_2D, 0);
  37. gl.glPushMatrix();
  38. gl.glColor3f( color[0], color[1], color[2]);
  39. gl.glTranslated(xcord + 0.1, ycord + 0, zcord + (LEG_LENGTH/2.0) + (LEG_LENGTH - 0.2) / 2.0f);
  40. gl.glRotated( timeDependent * (+ 90), 1, 0,0);
  41. gl.glTranslated(0, 0, - (LEG_LENGTH - 0.2) / 2.0f);
  42. gl.glScaled(0.2, (LEG_LENGTH/2.0), LEG_LENGTH);
  43. glut.glutSolidCube(1);
  44. gl.glPopMatrix();
  45.  
  46. gl.glPushMatrix();
  47. gl.glColor3f( color[0], color[1], color[2]);
  48. gl.glTranslated(xcord - 0.1, ycord + 0, zcord + (LEG_LENGTH/2.0) + (LEG_LENGTH - 0.2) / 2.0f);
  49. gl.glRotated(timeDependent * (-90), 1, 0,0);
  50. gl.glTranslated(0, 0, - (LEG_LENGTH - 0.2) / 2.0f);
  51. gl.glScaled(0.2, (LEG_LENGTH/2.0), LEG_LENGTH);
  52. glut.glutSolidCube(1);
  53. gl.glPopMatrix();
  54.  
  55. }
  56.  
  57.  
  58. /** Drawing the arms */
  59. private void drawArms(GL2 gl, GLU glu, GLUT glut, double timeDependent, double rotationAngle) {
  60. gl.glBindTexture(GL_TEXTURE_2D, 0);
  61. gl.glPushMatrix();
  62. gl.glColor3f( color[0], color[1], color[2]);
  63. gl.glTranslated(xcord + 0.3, ycord -0, zcord + LEG_LENGTH + (ARM_LENGTH/2.0) + (ARM_LENGTH - 0.2) / 2.0f);
  64. gl.glRotated(timeDependent * (-90), 1, 0,0);
  65. gl.glTranslated(0, 0, - (ARM_LENGTH - 0.2) / 2.0f);
  66. gl.glScaled(0.2, (ARM_LENGTH/2.0), ARM_LENGTH);
  67. glut.glutSolidCube(1);
  68. gl.glPopMatrix();
  69.  
  70. gl.glPushMatrix();
  71. gl.glColor3f( color[0], color[1], color[2]);
  72. gl.glTranslated(xcord-0.3, ycord+0, zcord + LEG_LENGTH + (ARM_LENGTH/2.0) + (ARM_LENGTH - 0.2) / 2.0f);
  73. gl.glRotated(timeDependent * (+90), 1, 0,0);
  74. gl.glTranslated(0, 0, - (ARM_LENGTH - 0.2) / 2.0f);
  75. gl.glScaled(0.2, (ARM_LENGTH/2.0), ARM_LENGTH);
  76. glut.glutSolidCube(1);
  77. gl.glPopMatrix();
  78.  
  79. }
  80. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement