test_DistancePhasedNode.py 1009 B

123456789101112131415161718192021222324252627282930
  1. from panda3d import core
  2. from direct.showbase.DistancePhasedNode import BufferedDistancePhasedNode
  3. def test_BufferedDistancePhasedNode(base):
  4. cSphere = core.CollisionSphere(0, 0, 0, 0.1)
  5. cNode = core.CollisionNode('camCol')
  6. cNode.addSolid(cSphere)
  7. cNodePath = core.NodePath(cNode)
  8. # cNodePath.reparentTo(base.cam)
  9. # cNodePath.show()
  10. # cNodePath.setPos(25,0,0)
  11. base.cTrav = core.CollisionTraverser()
  12. eventHandler = core.CollisionHandlerEvent()
  13. eventHandler.addInPattern('enter%in')
  14. eventHandler.addOutPattern('exit%in')
  15. # messenger.toggleVerbose()
  16. base.cTrav.addCollider(cNodePath, eventHandler)
  17. p = BufferedDistancePhasedNode('p', {'At': (10, 20), 'Near': (100, 200), 'Far': (1000, 1020)},
  18. autoCleanup=False,
  19. fromCollideNode=cNodePath,
  20. )
  21. p.reparentTo(base.render)
  22. p._DistancePhasedNode__oneTimeCollide()
  23. base.eventMgr.doEvents()