Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

toxic::Hit Class Reference

#include <hit.h>

List of all members.

Public Member Functions

void ExtractIntersection (const Ray &ray, sheep::Point3 *point, sheep::Vector3 *geometric_normal, sheep::Vector3 *shading_normal) const

Public Attributes

const IObjectm_object
 Hit object.

sheep::Real m_abscissa
 Intersection point in ray space, expressed in world space.

sheep::Vector3 m_geometric_normal
sheep::Vector3 m_shading_normal
sheep::Real m_u
 Planar texture coordinates, expressed in object space.

sheep::Real m_v
 Planar texture coordinates, expressed in object space.


Member Function Documentation

void toxic::Hit::ExtractIntersection const Ray ray,
sheep::Point3 point,
sheep::Vector3 geometric_normal,
sheep::Vector3 shading_normal
const [inline]
 

'ray' must be expressed in world space. Any of 'point', 'geometric_normal' and 'shading_normal' can be set to 0 in order to disable computation of the corresponding feature. 'point', 'geometric_normal' and 'shading_normal' are expressed in world space.

Parameters:
ray  World space.
point  World space.
geometric_normal  World space.
shading_normal  World space.

Definition at line 91 of file hit.h.

Referenced by toxic::Renderer::final_gathering(), toxic::Renderer::trace(), toxic::GlobalPhotonTracer::trace_photon(), and toxic::CausticsPhotonTracer::trace_photon().


Member Data Documentation

sheep::Real toxic::Hit::m_abscissa
 

Intersection point in ray space, expressed in world space.

Definition at line 43 of file hit.h.

Referenced by toxic::Sphere::ComputeIrradiance(), toxic::Renderer::final_gathering(), toxic::ThinLensCamera::Finalize(), toxic::Camera::Finalize(), toxic::Square::Intersect(), toxic::Sphere::Intersect(), toxic::Ring::Intersect(), toxic::Plane::Intersect(), toxic::Octree::Intersect(), toxic::Mesh::Intersect(), toxic::Cube::Intersect(), toxic::Collection::Intersect(), toxic::Octree::octree_full_visitor::octree_full_visitor(), and toxic::Octree::octree_full_visitor::Trace().

sheep::Vector3 toxic::Hit::m_geometric_normal
 

Geometric normal vector at intersection point, expressed in object space. Not necessarily unit-length.

Definition at line 47 of file hit.h.

Referenced by toxic::Sphere::ComputeIrradiance(), toxic::Square::Intersect(), toxic::Sphere::Intersect(), toxic::Ring::Intersect(), toxic::Plane::Intersect(), toxic::Mesh::Intersect(), and toxic::Cube::Intersect().

const IObject* toxic::Hit::m_object
 

Hit object.

Definition at line 40 of file hit.h.

Referenced by toxic::Sphere::ComputeIrradiance(), toxic::Renderer::final_gathering(), toxic::Square::Intersect(), toxic::Sphere::Intersect(), toxic::Ring::Intersect(), toxic::Plane::Intersect(), toxic::Mesh::Intersect(), toxic::Cube::Intersect(), toxic::Renderer::trace(), toxic::GlobalPhotonTracer::trace_photon(), and toxic::CausticsPhotonTracer::trace_photon().

sheep::Vector3 toxic::Hit::m_shading_normal
 

Shading normal vector at intersection point, expressed in object space. Not necessarily unit-length.

Definition at line 51 of file hit.h.

Referenced by toxic::Square::Intersect(), toxic::Sphere::Intersect(), toxic::Ring::Intersect(), toxic::Plane::Intersect(), toxic::Mesh::Intersect(), and toxic::Cube::Intersect().

sheep::Real toxic::Hit::m_u
 

Planar texture coordinates, expressed in object space.

Definition at line 54 of file hit.h.

Referenced by toxic::Square::Intersect(), and toxic::Mesh::Intersect().

sheep::Real toxic::Hit::m_v
 

Planar texture coordinates, expressed in object space.

Definition at line 54 of file hit.h.

Referenced by toxic::Square::Intersect(), and toxic::Mesh::Intersect().


The documentation for this class was generated from the following file:
Generated on Tue May 11 01:31:57 2004 for toxic by doxygen 1.3.6