1#ifndef BulletClosestRayCallback_h 
    2#define BulletClosestRayCallback_h 
   10#include <QScopedPointer> 
   21class BulletTargetShape;
 
   40                               const btCollisionWorld::RayResultCallback &source, 
 
   41                               btCollisionWorld::LocalRayResult &rayResult, 
 
   42                               bool nornmalInWorldSpace);
 
   51      btVector3 
point() 
const;
 
   58      btScalar 
distance(
const btVector3 &other) 
const;
 
   62                      const btScalar tolerance = DBL_MAX) 
const;
 
   74      virtual btScalar 
addSingleResult(btCollisionWorld::LocalRayResult &rayResult, 
 
   75                                       bool normalInWorldSpace);
 
   78      unsigned int defaultFlags() 
const;
 
   79      void copyRayResult(btCollisionWorld::RayResultCallback &dest, 
 
   80                         const btCollisionWorld::RayResultCallback &source);
 
Bullet ray tracing callback for closest hit on target surface.
Definition: BulletClosestRayCallback.h:33
 
btScalar fraction() const
Return the intersection hit fraction or fractional distance along the ray of the intersection.
Definition: BulletClosestRayCallback.cpp:157
 
btScalar distance() const
Returns the distance from the intersection point to the beginning of the ray.
Definition: BulletClosestRayCallback.cpp:221
 
btVector3 m_normal
! The intersection point in body fixed (x, y, z) kilometers.
Definition: BulletClosestRayCallback.h:68
 
btVector3 lookdir() const
Return the end of the ray.
Definition: BulletClosestRayCallback.cpp:140
 
int m_partId
! The 0-based index of the intersected triangle.
Definition: BulletClosestRayCallback.h:71
 
bool isValid() const
Checks if the callback is valid/has a valid intersection.
Definition: BulletClosestRayCallback.cpp:120
 
virtual ~BulletClosestRayCallback()
Destory a callback.
Definition: BulletClosestRayCallback.cpp:110
 
int triangleIndex() const
Return the 0-based index of the intersected triangle.
Definition: BulletClosestRayCallback.cpp:200
 
btVector3 point() const
Return the intersection point, if one exists.
Definition: BulletClosestRayCallback.cpp:167
 
bool operator==(const BulletClosestRayCallback &other) const
Equality operator to check if this callback is equivalent to another callback.
Definition: BulletClosestRayCallback.cpp:266
 
bool isVisible(const BulletClosestRayCallback &other, const btScalar tolerance=DBL_MAX) const
Check if the intersection in this is visible based on another callback.
Definition: BulletClosestRayCallback.cpp:291
 
btVector3 normal() const
Return the local surface normal at the intersection, if an intersection exists.
Definition: BulletClosestRayCallback.cpp:183
 
int partId() const
Return the Bullet ID of the intersected collision object.
Definition: BulletClosestRayCallback.cpp:210
 
BulletClosestRayCallback()
Default constructor.
Definition: BulletClosestRayCallback.cpp:31
 
virtual btScalar addSingleResult(btCollisionWorld::LocalRayResult &rayResult, bool normalInWorldSpace)
! The Bullet ID of the intersected collision object.
Definition: BulletClosestRayCallback.cpp:333
 
const BulletTargetShape * body() const
@breif Return pointer to target shape
Definition: BulletClosestRayCallback.cpp:313
 
btVector3 m_point
Definition: BulletClosestRayCallback.h:67
 
int m_triangleIndex
! The local surface normal at the intersection point in body fixed (x, y, z).
Definition: BulletClosestRayCallback.h:70
 
btVector3 observer() const
Return the beginning of the ray.
Definition: BulletClosestRayCallback.cpp:130
 
Bullet Target Shape for planetary bodies.
Definition: BulletTargetShape.h:33
 
This is free and unencumbered software released into the public domain.
Definition: Apollo.h:16