raycastresult.monkey2 825 B

123456789101112131415161718192021222324252627282930313233
  1. Namespace mojo3d
  2. Class RayCastResult
  3. Field time:Float
  4. Field body:RigidBody
  5. Field point:Vec3f
  6. Field normal:Vec3f
  7. Method New()
  8. End
  9. Method New( btresult:btCollisionWorld.ClosestRayResultCallback Ptr )
  10. time=btresult->m_closestHitFraction
  11. body=Cast<RigidBody>( btresult->m_collisionObject.getUserPointer() )
  12. point=btresult->m_hitPointWorld
  13. normal=btresult->m_hitNormalWorld
  14. End
  15. Method New( btresult:btCollisionWorld.ClosestConvexResultCallback Ptr )
  16. Local castFrom:=Cast<Vec3f>( btresult->m_convexFromWorld )
  17. Local castTo:=Cast<Vec3f>( btresult->m_convexToWorld )
  18. time=btresult->m_closestHitFraction
  19. body=Cast<RigidBody>( btresult->m_hitCollisionObject.getUserPointer() )
  20. point=(castTo-castFrom) * btresult->m_closestHitFraction + castFrom
  21. normal=btresult->m_hitNormalWorld
  22. End
  23. End