Jet  v1.3.3
Public Member Functions | List of all members
jet::IntersectionQueryEngine2< T > Class Template Referenceabstract

Abstract base class for 2-D intersection test query engine. More...

#include <jet/intersection_query_engine2.h>

Inheritance diagram for jet::IntersectionQueryEngine2< T >:
jet::Bvh2< T > jet::ListQueryEngine2< T > jet::Quadtree< T >

Public Member Functions

virtual bool intersects (const BoundingBox2D &box, const BoxIntersectionTestFunc2< T > &testFunc) const =0
 Returns true if given box intersects with any of the stored items. More...
 
virtual bool intersects (const Ray2D &ray, const RayIntersectionTestFunc2< T > &testFunc) const =0
 Returns true if given ray intersects with any of the stored items. More...
 
virtual void forEachIntersectingItem (const BoundingBox2D &box, const BoxIntersectionTestFunc2< T > &testFunc, const IntersectionVisitorFunc2< T > &visitorFunc) const =0
 Invokes visitorFunc for every intersecting items. More...
 
virtual void forEachIntersectingItem (const Ray2D &ray, const RayIntersectionTestFunc2< T > &testFunc, const IntersectionVisitorFunc2< T > &visitorFunc) const =0
 Invokes visitorFunc for every intersecting items. More...
 
virtual ClosestIntersectionQueryResult2< T > closestIntersection (const Ray2D &ray, const GetRayIntersectionFunc2< T > &testFunc) const =0
 Returns the closest intersection for given ray. More...
 

Detailed Description

template<typename T>
class jet::IntersectionQueryEngine2< T >

Abstract base class for 2-D intersection test query engine.

Member Function Documentation

◆ closestIntersection()

template<typename T >
virtual ClosestIntersectionQueryResult2<T> jet::IntersectionQueryEngine2< T >::closestIntersection ( const Ray2D ray,
const GetRayIntersectionFunc2< T > &  testFunc 
) const
pure virtual

Returns the closest intersection for given ray.

Implemented in jet::Quadtree< T >, jet::Bvh2< T >, jet::ListQueryEngine2< T >, jet::Bvh2< Surface2Ptr >, and jet::Bvh2< ImplicitSurface2Ptr >.

◆ forEachIntersectingItem() [1/2]

template<typename T >
virtual void jet::IntersectionQueryEngine2< T >::forEachIntersectingItem ( const BoundingBox2D box,
const BoxIntersectionTestFunc2< T > &  testFunc,
const IntersectionVisitorFunc2< T > &  visitorFunc 
) const
pure virtual

Invokes visitorFunc for every intersecting items.

Implemented in jet::Quadtree< T >, jet::Bvh2< T >, jet::ListQueryEngine2< T >, jet::Bvh2< Surface2Ptr >, and jet::Bvh2< ImplicitSurface2Ptr >.

◆ forEachIntersectingItem() [2/2]

template<typename T >
virtual void jet::IntersectionQueryEngine2< T >::forEachIntersectingItem ( const Ray2D ray,
const RayIntersectionTestFunc2< T > &  testFunc,
const IntersectionVisitorFunc2< T > &  visitorFunc 
) const
pure virtual

Invokes visitorFunc for every intersecting items.

Implemented in jet::Quadtree< T >, jet::Bvh2< T >, jet::ListQueryEngine2< T >, jet::Bvh2< Surface2Ptr >, and jet::Bvh2< ImplicitSurface2Ptr >.

◆ intersects() [1/2]

template<typename T >
virtual bool jet::IntersectionQueryEngine2< T >::intersects ( const BoundingBox2D box,
const BoxIntersectionTestFunc2< T > &  testFunc 
) const
pure virtual

Returns true if given box intersects with any of the stored items.

Implemented in jet::Quadtree< T >, jet::Bvh2< T >, jet::ListQueryEngine2< T >, jet::Bvh2< Surface2Ptr >, and jet::Bvh2< ImplicitSurface2Ptr >.

◆ intersects() [2/2]

template<typename T >
virtual bool jet::IntersectionQueryEngine2< T >::intersects ( const Ray2D ray,
const RayIntersectionTestFunc2< T > &  testFunc 
) const
pure virtual

Returns true if given ray intersects with any of the stored items.

Implemented in jet::Quadtree< T >, jet::Bvh2< T >, jet::ListQueryEngine2< T >, jet::Bvh2< Surface2Ptr >, and jet::Bvh2< ImplicitSurface2Ptr >.


The documentation for this class was generated from the following file: