Advertisement
Guest User

Untitled

a guest
Dec 11th, 2017
61
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.78 KB | None | 0 0
  1. <!DOCTYPE html>
  2.  
  3. <html>
  4. <head>
  5. <script src="three.min.js"></script>
  6. <script src="human.js"></script>
  7. </head>
  8.  
  9. <body>
  10. <h1>"Нацепване на лежанка"<br><small>ф.н. 81530 &ndash; група 7 &ndash; Полина Методиева</small></h1>
  11.  
  12. <script>
  13. // нагласяване на цвета и центрирането на текста с имената ви
  14. document.getElementsByTagName('h1')[0].style = 'color:white; text-align:center; font-size:1.75em';
  15.  
  16. // рисувателно поле на цял екран
  17. renderer = new THREE.WebGLRenderer({antialias:true});
  18. renderer.setSize( window.innerWidth, window.innerHeight );
  19. document.body.appendChild( renderer.domElement );
  20. renderer.domElement.style = 'width:100%; height:100%; position:fixed; top:0; left:0; z-index:-1;';
  21.  
  22. // сцена и камера
  23. scene = new THREE.Scene();
  24. camera = new THREE.PerspectiveCamera( 30, window.innerWidth/window.innerHeight, 0.1, 2000 );
  25. camera.position.set(0,3,150);
  26.  
  27. // светлини
  28. var light = new THREE.DirectionalLight('lightblue',0.8);
  29. light.position.set(0,1,4);
  30. scene.add(light);
  31. scene.add( new THREE.AmbientLight('white',0.4) );
  32.  
  33. var geometry = new THREE.BoxGeometry( 42, 2, 20 );
  34. var material = new THREE.MeshPhongMaterial();
  35. var cube = new THREE.Mesh( geometry, material );
  36. cube.position.set(8,-5.5,0);
  37.  
  38. var geometry2 = new THREE.BoxGeometry( 3, 10, 3 );
  39. var material2 = new THREE.MeshPhongMaterial();
  40. var cube2 = new THREE.Mesh( geometry2, material2 );
  41. cube2.position.set(18.6,-5.5,8.5);
  42.  
  43. var cube3=cube2.clone();
  44. cube3.position.set(-18.6,-5.5,8.5);
  45.  
  46. var cube4=cube2.clone();
  47. cube4.position.set(-18.6,-5.5,-8.5);
  48.  
  49. var cube5=cube2.clone();
  50. cube5.position.set(18.6,-5.5,-8.5);
  51.  
  52. cube.add(cube2);
  53. cube.add(cube3);
  54. cube.add(cube4);
  55. cube.add(cube5);
  56.  
  57. scene.add( cube );
  58.  
  59. var geometry1 = new THREE.CylinderGeometry( 1, 1, 50, 60);
  60. var material1 = new THREE.MeshPhongMaterial();
  61. var tube = new THREE.Mesh( geometry1, material1 );
  62. tube.position.set(1.5,4,0);
  63. tube.rotation.set(-4.6,-4.5,0);
  64.  
  65. var geometry2 = new THREE.SphereGeometry( 4, 20, 20 );
  66. var material2 = new THREE.MeshPhongMaterial();
  67. var sphere = new THREE.Mesh( geometry2, material2 );
  68. sphere.position.set(0,25,0);
  69.  
  70. var sphere1 = sphere.clone();
  71. sphere1.position.set(0, -25, 0);
  72.  
  73. tube.add(sphere1);
  74. tube.add(sphere);
  75.  
  76. // функция за анимиране на сцената
  77. var t = 0; // време
  78. function drawFrame()
  79. {
  80. requestAnimationFrame( drawFrame );
  81. if (animate) animate(t++);
  82. renderer.render( scene, camera );
  83. }
  84.  
  85. // човече
  86. манекен = мъжествен();
  87. манекен2 = мъжествен();
  88.  
  89. // тук се описват статичните елементи на позата
  90. манекен2.rotation.set(0, 3.2, 0);
  91. манекен2.position.set(50,9,-20);
  92. манекен2.д_ръка.rotation.set(6,0,10.5);
  93. манекен2.л_ръка.rotation.set(6,0,10.5);
  94. манекен2.тяло.rotation.set(0,0,6.5);
  95. манекен2.л_лакът.rotation.set(0,0,-12);
  96. манекен2.д_лакът.rotation.set(0,0,-12);
  97.  
  98.  
  99. манекен.rotation.set(0,9.5,-4.7);
  100. манекен.д_коляно.rotation.set(0,0,-11);
  101. манекен.л_коляно.rotation.set(0,0,-11);
  102. манекен.л_ръка.rotation.set(0,0,11);
  103. манекен.д_ръка.rotation.set(0,0,11);
  104.  
  105. манекен.л_китка.add(tube);
  106.  
  107.  
  108. // анимация на човечето
  109. animate = function (t)
  110. {
  111.  
  112. // тук се описват динамичните елементи на позата
  113. // като променливата t е номер на кадър, като се
  114. // очаква 1 секунда да е приблизително 60 кадъра
  115. //манекен.врат.врът(0,0,10*sin(5*t)-5);
  116. //манекен.глава.врът(0,0,10*sin(5*t)-5);
  117. //манекен.л_крак.врът(0,0,30*sin(5*t)-20);
  118. //манекен.л_коляно.врът(0,0,-30*sin(5*t)+20);
  119.  
  120. //манекен.л_китка.врът(0,0,-30*sin(5*t)+15);
  121. //манекен.д_китка.врът(0,0,-30*sin(5*t)+15);
  122.  
  123. манекен.тяло.врът(0,0,sin(5*t)+1);
  124.  
  125. манекен.л_лакът.врът(0,0,-30*sin(5*t)+90);
  126. манекен.д_лакът.врът(0,0,-30*sin(5*t)+90);
  127.  
  128. манекен.д_ръка.врът(0,0,30*sin(5*t)-20);
  129. манекен.л_ръка.врът(0,0,30*sin(5*t)-20);
  130.  
  131. манекен2.тяло.врът(0,0,10*sin(5*t)-20);
  132.  
  133.  
  134. }
  135.  
  136. drawFrame();
  137. </script>
  138. </body>
  139. </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement