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

toxic::DummyObject Class Reference

#include <dummyobject.h>

Inheritance diagram for toxic::DummyObject:

toxic::IBoundedObject toxic::IObject toxic::Basis List of all members.

Public Member Functions

 DummyObject (const sheep::Matrix4 &m, const ISurfaceShader *surface_shader, IntersectionMask intersection_mask=INTERSECT_ALL_RAYS)
 m is the object space to world space transformation matrix.

virtual const sheep::AABB3GetAABB () const
virtual sheep::Real ComputeSurfaceArea () const
 Computes the surface area of this object.

virtual void EvaluateSurface (const sheep::Point2 &input, sheep::Point3 *point, sheep::Vector3 *geometric_normal) const
virtual bool Intersect (const Context &context, const Ray &ray, Hit *hit=0) const

Private Attributes

sheep::AABB3 m_aabb
 Bounding box of the object, expressed in world space.


Constructor & Destructor Documentation

DummyObject::DummyObject const sheep::Matrix4 m,
const ISurfaceShader surface_shader,
IntersectionMask  intersection_mask = INTERSECT_ALL_RAYS
 

m is the object space to world space transformation matrix.

Todo:
Is it really necessary, since this object won't be rendered?

Definition at line 35 of file dummyobject.cpp.

References sheep::AABB3::Extend(), toxic::OBJECT_AABB_EXTENSION(), and sheep::AABB3::Transform().


Member Function Documentation

sheep::Real DummyObject::ComputeSurfaceArea  )  const [inline, virtual]
 

Computes the surface area of this object.

Implements toxic::IBoundedObject.

Definition at line 107 of file dummyobject.h.

void DummyObject::EvaluateSurface const sheep::Point2 input,
sheep::Point3 point,
sheep::Vector3 geometric_normal
const [virtual]
 

Given a point in the unit square (the set of points in [0..1]^2), this method computes the corresponding surface point and normal (both are expressed in world space).

Todo:
Implement.

Implements toxic::IBoundedObject.

Definition at line 47 of file dummyobject.cpp.

const sheep::AABB3 & DummyObject::GetAABB  )  const [inline, virtual]
 

Returns the Axis Aligned Bounding Box of this object. The AABB is expressed in world space.

Implements toxic::IBoundedObject.

Definition at line 102 of file dummyobject.h.

bool DummyObject::Intersect const Context context,
const Ray ray,
Hit hit = 0
const [virtual]
 

This method returns true if the ray intersect the object, or false otherwise. If 'hit' is not null, intersection data are reported through the 'hit' parameter (only if an intersection has been found; if no intersection has been found, the 'hit' parameter is left unchanged). The ray is expressed in world space.

Parameters:
ray  'ray' is expressed in world space.

Implements toxic::IObject.

Definition at line 58 of file dummyobject.cpp.

References toxic::Ray::GetType(), toxic::Context::m_statistics, and toxic::Statistics::m_tested_intersections.


Member Data Documentation

sheep::AABB3 toxic::DummyObject::m_aabb [private]
 

Bounding box of the object, expressed in world space.

Definition at line 76 of file dummyobject.h.


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