The RayIntersector class is used to detect the intersection points between a Ray and a set of Actor[s].
More...
#include <RayIntersector.hpp>
List of all members.
Detailed Description
The RayIntersector class is used to detect the intersection points between a Ray and a set of Actor[s].
Constructor & Destructor Documentation
| vl::RayIntersector::RayIntersector |
( |
) |
[inline] |
Member Function Documentation
| virtual const char* vl::RayIntersector::className |
( |
) |
[inline, virtual] |
Returns the name of the class.
Reimplemented from vl::Object.
The Actors against which the intersection test is performed.
The Actors against which the intersection test is performed.
| const Ray& vl::RayIntersector::ray |
( |
) |
const [inline] |
The ray in world coordinates to be intersected with the actors()
| void vl::RayIntersector::setRay |
( |
const Ray & |
ray ) |
[inline] |
The ray in world coordinates to be intersected with the actors()
| const Frustum& vl::RayIntersector::frustum |
( |
) |
const [inline] |
The frustum in world coordinates used to cull the objects.
| void vl::RayIntersector::setFrustum |
( |
const Frustum & |
frustum ) |
[inline] |
The frustum in world coordinates used to cull the objects.
| const std::vector< ref<RayIntersection> >& vl::RayIntersector::intersections |
( |
) |
const [inline] |
The intersection points detected by the last intersect() call sorted according to their distance (the first one is the closest).
| void RayIntersector::intersect |
( |
) |
|
Executes the intersection test.
- Note:
- Before calling this function the transforms and the bounding volumes of the Actor[s] to be intersected must be updated, in this order.
-
All the intersections are mande on the Actor's LOD level #0.
| void RayIntersector::intersect |
( |
const Ray & |
ray, |
|
|
SceneManager * |
scene_manager |
|
) |
| |
Computes the intersections between the given ray and the Actor[s] contained in the given scene manager.
This is an utility function equivalent to:
intersector->actors()->clear();
scene_manager->extractActors( *intersector->actors() );
intersector->setRay(ray);
intersector->intersect();
| void RayIntersector::intersect |
( |
Actor * |
act ) |
[protected] |
| void RayIntersector::intersectGeometry |
( |
Actor * |
act, |
|
|
Geometry * |
geom |
|
) |
| [protected] |
template<class T >
| void RayIntersector::intersectTriangle |
( |
const T & |
a, |
|
|
const T & |
b, |
|
|
const T & |
c, |
|
|
Actor * |
act, |
|
|
Geometry * |
geom, |
|
|
DrawCall * |
prim, |
|
|
int |
prim_idx |
|
) |
| [protected] |
Member Data Documentation
The documentation for this class was generated from the following files: