test_transforms.py 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. from panda3d.core import TransformState, Mat4, Mat3
  2. def test_transform_identity():
  3. state = TransformState.make_identity()
  4. assert state.is_identity()
  5. assert not state.is_invalid()
  6. assert not state.is_singular()
  7. assert state.is_2d()
  8. assert state.has_components()
  9. assert not state.components_given()
  10. assert not state.hpr_given()
  11. assert not state.quat_given()
  12. assert state.has_pos()
  13. assert state.has_hpr()
  14. assert state.has_quat()
  15. assert state.has_scale()
  16. assert state.has_identity_scale()
  17. assert state.has_uniform_scale()
  18. assert state.has_shear()
  19. assert not state.has_nonzero_shear()
  20. assert state.has_mat()
  21. assert state.get_pos() == (0, 0, 0)
  22. assert state.get_hpr() == (0, 0, 0)
  23. assert state.get_quat() == (1, 0, 0, 0)
  24. assert state.get_norm_quat() == (1, 0, 0, 0)
  25. assert state.get_scale() == (1, 1, 1)
  26. assert state.get_uniform_scale() == 1
  27. assert state.get_shear() == (0, 0, 0)
  28. assert state.get_mat() == Mat4.ident_mat()
  29. assert state.get_pos2d() == (0, 0)
  30. assert state.get_rotate2d() == 0
  31. assert state.get_scale2d() == (1, 1)
  32. assert state.get_shear2d() == 0
  33. assert state.get_mat3() == Mat3.ident_mat()
  34. state2 = TransformState.make_identity()
  35. assert state.this == state2.this
  36. def test_transform_invalid():
  37. state = TransformState.make_invalid()
  38. assert not state.is_identity()
  39. assert state.is_invalid()
  40. assert state.is_singular()
  41. assert not state.is_2d()
  42. assert not state.has_components()
  43. assert not state.components_given()
  44. assert not state.hpr_given()
  45. assert not state.quat_given()
  46. assert not state.has_pos()
  47. assert not state.has_hpr()
  48. assert not state.has_quat()
  49. assert not state.has_scale()
  50. assert not state.has_identity_scale()
  51. assert not state.has_uniform_scale()
  52. assert not state.has_shear()
  53. assert not state.has_nonzero_shear()
  54. assert not state.has_mat()
  55. state2 = TransformState.make_invalid()
  56. assert state.this == state2.this