librtl

rtl_light Class Reference

Base class for providing illumination to a scene. More...

#include <light.h>

Inherits dyn_collectable.

Inherited by rtl_sphericallight.

List of all members.

Public Members

Static Public Members

Protected Members


Detailed Description

Base class for providing illumination to a scene.

This class implements a point light source which produces sharp shadows.

Examples:
SuperEllipsoids.

Member Function Documentation

rtl_light::rtl_light()

Creates a light source with white light positioned at <9,9,15>.

virtual const jVec3& rtl_light::position() const [virtual]

Returns the current position of the light.

void rtl_light::position( const jVec3& _p )

Sets the current position for this light.

void rtl_light::position( const jMat4& T )

Transforms the position of the light by the given matrix.

Examples:
Soft and SuperEllipsoids.

const jColour& rtl_light::colour( const jNorm3& ) const

Return the colour of the light emitted.

void rtl_light::colour( const jColour& _clr )

Sets the colour of the light emitted.

Examples:
Soft and SuperEllipsoids.

virtual jNorm3 rtl_light::tolight( const jVec3& I, jFlt& t ) const [virtual]

Returns the direction to the light from the point I on the given object.

Reimplemented in rtl_sphericallight.

const rtl_flags& rtl_light::flags() const

Returns the bitmap of options for this light.

const rtl_flags& rtl_light::flags() const

Returns the bitmap of options for this light.

virtual bool rtl_light::areaLight() const [virtual]

Reimplemented in rtl_sphericallight.


Member Data Documentation

rtl_light rtl_light::Default [static]

The default light that the illumination model will use if none has been specified for the set model.

jULng rtl_light::InsideScene [static]

Flag that indicates (if set) that the light is inside the bounding voxel of the scene.

rtl_object* rtl_light::o [protected]

jVec3 rtl_light::p [protected]

jColour rtl_light::clr [protected]

rtl_flags rtl_light::f [protected]


The documentation for this class was generated from the following file:
JSP / librtl v0.2 mtigges@cpsc.ucalgary.ca