Object3D.js 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. /**
  2. * @author simonThiele / https://github.com/simonThiele
  3. */
  4. QUnit.module( "Object3D" );
  5. var RadToDeg = 180 / Math.PI;
  6. QUnit.test( "rotateX" , function( assert ) {
  7. var obj = new THREE.Object3D();
  8. var angleInRad = 1.562;
  9. obj.rotateX(angleInRad);
  10. assert.numEqual( obj.rotation.x, angleInRad, "x is equal" );
  11. });
  12. QUnit.test( "rotateY" , function( assert ) {
  13. var obj = new THREE.Object3D();
  14. var angleInRad = -0.346;
  15. obj.rotateY(angleInRad);
  16. assert.numEqual( obj.rotation.y, angleInRad, "y is equal" );
  17. });
  18. QUnit.test( "rotateZ" , function( assert ) {
  19. var obj = new THREE.Object3D();
  20. var angleInRad = 1;
  21. obj.rotateZ(angleInRad);
  22. assert.numEqual( obj.rotation.z, angleInRad, "z is equal" );
  23. });
  24. QUnit.test( "translateOnAxis" , function( assert ) {
  25. var obj = new THREE.Object3D();
  26. obj.translateOnAxis(new THREE.Vector3(1, 0, 0), 1);
  27. obj.translateOnAxis(new THREE.Vector3(0, 1, 0), 1.23);
  28. obj.translateOnAxis(new THREE.Vector3(0, 0, 1), -4.56);
  29. assert.propEqual( obj.position, { x: 1, y: 1.23, z: -4.56 } );
  30. });
  31. QUnit.test( "translateX" , function( assert ) {
  32. var obj = new THREE.Object3D();
  33. obj.translateX(1.234);
  34. assert.numEqual( obj.position.x, 1.234, "x is equal" );
  35. });
  36. QUnit.test( "translateY" , function( assert ) {
  37. var obj = new THREE.Object3D();
  38. obj.translateY(1.234);
  39. assert.numEqual( obj.position.y, 1.234, "y is equal" );
  40. });
  41. QUnit.test( "translateZ" , function( assert ) {
  42. var obj = new THREE.Object3D();
  43. obj.translateZ(1.234);
  44. assert.numEqual( obj.position.z, 1.234, "z is equal" );
  45. });
  46. QUnit.test( "lookAt" , function( assert ) {
  47. var obj = new THREE.Object3D();
  48. obj.lookAt(new THREE.Vector3(0, -1, 1));
  49. assert.numEqual( obj.rotation.x * RadToDeg, 45, "x is equal" );
  50. });
  51. QUnit.test( "getWorldRotation" , function( assert ) {
  52. var obj = new THREE.Object3D();
  53. obj.lookAt(new THREE.Vector3(0, -1, 1));
  54. assert.numEqual( obj.getWorldRotation().x * RadToDeg, 45, "x is equal" );
  55. obj.lookAt(new THREE.Vector3(1, 0, 0));
  56. assert.numEqual( obj.getWorldRotation().y * RadToDeg, 90, "y is equal" );
  57. });
粤ICP备19079148号