test_pandanode.py 1.1 KB

123456789101112131415161718192021222324252627282930313233343536
  1. from panda3d.core import PandaNode, TransformState
  2. def test_node_prev_transform():
  3. identity = TransformState.make_identity()
  4. t1 = TransformState.make_pos((1, 0, 0))
  5. t2 = TransformState.make_pos((2, 0, 0))
  6. t3 = TransformState.make_pos((3, 0, 0))
  7. node = PandaNode("node")
  8. assert node.transform == identity
  9. assert node.prev_transform == identity
  10. assert not node.has_dirty_prev_transform()
  11. node.transform = t1
  12. assert node.transform == t1
  13. assert node.prev_transform == identity
  14. assert node.has_dirty_prev_transform()
  15. node.transform = t2
  16. assert node.transform == t2
  17. assert node.prev_transform == identity
  18. assert node.has_dirty_prev_transform()
  19. node.reset_prev_transform()
  20. assert node.transform == t2
  21. assert node.prev_transform == t2
  22. assert not node.has_dirty_prev_transform()
  23. node.transform = t3
  24. assert node.prev_transform == t2
  25. assert node.has_dirty_prev_transform()
  26. PandaNode.reset_all_prev_transform()
  27. assert node.transform == t3
  28. assert node.prev_transform == t3
  29. assert not node.has_dirty_prev_transform()