Intersectable Class Reference

Base interface for all object types that can be ray-traced. The most important implementing classes are TriangleMesh and Transformed (usually referring to a TriangleMesh). A KDTree will build a hierarchy of Intersectables. TraingleMesh::Patch is also an implementing class, and a TriangleMesh contains a KDTree of patches. More...

Inherited by Cylinder, Occluder, PlaneXAligned, PlaneYAligned, PlaneZAligned, Sphere, Transformed, Triangle, TriangleMesh, and TriangleMesh::Patch.

List of all members.

Public Member Functions

virtual bool intersect (const Ray &ray, float &depth, float rayMin, float rayMax)=0
 pure virtual function, must be implemented to carry out the intersection test
virtual float getSurfaceArea ()
 return the surface area
virtual void sampleSurface (Radion &radion)
 return a random surface point

Public Attributes

BoundingBox bbox
 bounding box for the kd-tree
unsigned int lastTestedRayId
 result of the last intersection test


Detailed Description

Base interface for all object types that can be ray-traced. The most important implementing classes are TriangleMesh and Transformed (usually referring to a TriangleMesh). A KDTree will build a hierarchy of Intersectables. TraingleMesh::Patch is also an implementing class, and a TriangleMesh contains a KDTree of patches.


The documentation for this class was generated from the following files:
Generated on Thu Apr 27 17:17:42 2006 for Path Map Module by  doxygen 1.4.6-NO