net.sf.j3d.threeD.raytracer.lighting
Interface SurfaceLight

All Superinterfaces:
Light
All Known Implementing Classes:
RectangularLight, Sphere, SphericalLight

public interface SurfaceLight
extends Light

A SurfaceLight implementation represents a light that can be represented by some (possible infinite) set of other Light objects. A correct implementation should be able to return any number of samples (Light objects) that are well distributed and representitive of the surface. Factoring in number of samples to create an intensity value for each sample will be handled by the ray tracing engine.

Author:
Mike Murray

Field Summary
 
Fields inherited from interface net.sf.j3d.threeD.raytracer.lighting.Light
castShadows
 
Method Summary
 Light[] getSamples()
           
 Light[] getSamples(int total)
           
 
Methods inherited from interface net.sf.j3d.threeD.raytracer.lighting.Light
getColor, getColorAt, getIntensity, setColor, setIntensity
 

Method Detail

getSamples

Light[] getSamples(int total)
Parameters:
total - Total number of samples to return.
Returns:
An array containing samples for this SurfaceLight instance.

getSamples

Light[] getSamples()
Returns:
An array containing samples for this SurfaceLight instance.