File failed to load: https://isis.astrogeology.usgs.gov/6.0.0/Object/assets/jax/output/NativeMML/config.js
Isis Developer Reference
BulletAllHitsRayCallback.h
Go to the documentation of this file.
1 #ifndef BulletAllHitsRayCallback_h
2 #define BulletAllHitsRayCallback_h
3 
8 /* SPDX-License-Identifier: CC0-1.0 */
9 
10 #include <QScopedPointer>
11 #include <QString>
12 #include <QVector>
13 
14 
16 #include "Constants.h"
17 #include "IException.h"
18 #include "SurfacePoint.h"
19 
20 namespace Isis {
21 
22 
30  class BulletAllHitsRayCallback : public btCollisionWorld::AllHitsRayResultCallback {
31  public:
33  BulletAllHitsRayCallback(const btVector3 &observer, const btVector3 &lookdir,
34  const bool cullBackfacers = true);
35  virtual ~BulletAllHitsRayCallback();
36 
37  bool isValid() const;
38  int size() const;
39 
40  btVector3 observer() const;
41  btVector3 lookdir() const;
42 
43  const BulletClosestRayCallback &hit(const int &index = 0) const;
44 
45  protected:
47 
48  virtual btScalar addSingleResult(btCollisionWorld::LocalRayResult &rayResult,
49  bool normalInWorldSpace);
50  };
51 
52 } // namespace Isis
53 
54 #endif
55 
Isis::BulletAllHitsRayCallback::isValid
bool isValid() const
Checks if the callback is valid/has a valid intersection.
Definition: BulletAllHitsRayCallback.cpp:70
Isis::BulletAllHitsRayCallback
Bullet ray tracing callback to return all intersections along a ray's path.
Definition: BulletAllHitsRayCallback.h:30
Isis::BulletAllHitsRayCallback::size
int size() const
Returns the number of intersections found.
Definition: BulletAllHitsRayCallback.cpp:80
Isis::BulletAllHitsRayCallback::lookdir
btVector3 lookdir() const
Return the end of the ray.
Definition: BulletAllHitsRayCallback.cpp:100
Isis::BulletAllHitsRayCallback::BulletAllHitsRayCallback
BulletAllHitsRayCallback()
Default constructor.
Definition: BulletAllHitsRayCallback.cpp:29
Isis::BulletAllHitsRayCallback::hit
const BulletClosestRayCallback & hit(const int &index=0) const
Return a callback for the intersection at a given index.
Definition: BulletAllHitsRayCallback.cpp:112
SurfacePoint.h
Isis::BulletAllHitsRayCallback::addSingleResult
virtual btScalar addSingleResult(btCollisionWorld::LocalRayResult &rayResult, bool normalInWorldSpace)
Add a local intersection result to this callback during ray casting.
Definition: BulletAllHitsRayCallback.cpp:131
Isis::BulletAllHitsRayCallback::m_rayHits
QVector< BulletClosestRayCallback > m_rayHits
List of ray hits.
Definition: BulletAllHitsRayCallback.h:46
BulletClosestRayCallback.h
IException.h
BulletAllHitsRayCallback.h
Constants.h
QVector
This is free and unencumbered software released into the public domain.
Definition: Calculator.h:18
Isis::BulletAllHitsRayCallback::observer
btVector3 observer() const
Return the beginning of the ray.
Definition: BulletAllHitsRayCallback.cpp:90
Isis::BulletClosestRayCallback
Bullet ray tracing callback for closest hit on target surface.
Definition: BulletClosestRayCallback.h:33
Isis
This is free and unencumbered software released into the public domain.
Definition: Apollo.h:16
Isis::BulletAllHitsRayCallback::~BulletAllHitsRayCallback
virtual ~BulletAllHitsRayCallback()
Destroy this callback.
Definition: BulletAllHitsRayCallback.cpp:60

U.S. Department of the Interior | U.S. Geological Survey
ISIS | Privacy & Disclaimers | Astrogeology Research Program
To contact us, please post comments and questions on the USGS Astrogeology Discussion Board
To report a bug, or suggest a feature go to: ISIS Github
File Modified: 03/21/2022 06:50:34