Go to the documentation of this file.
7 #ifndef INCLUDE_JET_INTERSECTION_QUERY_ENGINE3_H_
8 #define INCLUDE_JET_INTERSECTION_QUERY_ENGINE3_H_
27 std::function<double(
const T&,
const Vector3D&)>;
77 #endif // INCLUDE_JET_INTERSECTION_QUERY_ENGINE3_H_
std::function< double(const T &, const Ray3D &)> GetRayIntersectionFunc3
Ray-item closest intersection evaluation function.
Definition: intersection_query_engine3.h:40
std::function< bool(const T &, const BoundingBox3D &)> BoxIntersectionTestFunc3
Box-item intersection test function.
Definition: intersection_query_engine3.h:32
std::function< void(const T &)> IntersectionVisitorFunc3
Visitor function which is invoked for each intersecting item.
Definition: intersection_query_engine3.h:44
virtual void forEachIntersectingItem(const BoundingBox3D &box, const BoxIntersectionTestFunc3< T > &testFunc, const IntersectionVisitorFunc3< T > &visitorFunc) const =0
Invokes visitorFunc for every intersecting items.
3-D axis-aligned bounding box class.
Definition: bounding_box3.h:41
double distance
Definition: intersection_query_engine3.h:21
std::function< double(const T &, const Vector3D &)> ClosestIntersectionDistanceFunc3
Closest intersection distance measure function.
Definition: intersection_query_engine3.h:27
virtual ClosestIntersectionQueryResult3< T > closestIntersection(const Ray3D &ray, const GetRayIntersectionFunc3< T > &testFunc) const =0
Returns the closest intersection for given ray.
virtual void forEachIntersectingItem(const Ray3D &ray, const RayIntersectionTestFunc3< T > &testFunc, const IntersectionVisitorFunc3< T > &visitorFunc) const =0
Invokes visitorFunc for every intersecting items.
Definition: advection_solver2.h:18
std::function< bool(const T &, const Ray3D &)> RayIntersectionTestFunc3
Ray-item intersection test function.
Definition: intersection_query_engine3.h:36
virtual bool intersects(const BoundingBox3D &box, const BoxIntersectionTestFunc3< T > &testFunc) const =0
Returns true if given box intersects with any of the stored items.
Class for 2-D ray.
Definition: ray3.h:21
virtual bool intersects(const Ray3D &ray, const RayIntersectionTestFunc3< T > &testFunc) const =0
Returns true if given ray intersects with any of the stored items.
constexpr double kMaxD
Max double.
Definition: constants.h:88
3-D vector class.
Definition: vector3.h:25
const T * item
Definition: intersection_query_engine3.h:20
Abstract base class for 3-D intersection test query engine.
Definition: intersection_query_engine3.h:48
Closest intersection query result.
Definition: intersection_query_engine3.h:19