de.grogra.ray2.tracing
Class LightModelProcessor

java.lang.Object
  extended by de.grogra.ray2.tracing.RadiationModel
      extended by de.grogra.ray2.tracing.LightModelProcessor
All Implemented Interfaces:
java.lang.Cloneable

public class LightModelProcessor
extends RadiationModel
implements java.lang.Cloneable

Perform light model calculation for a single ray and collect the energy that was absorbed by the volumes. Color computations are performed with instances of Spectrum.

Author:
Reinhard Hemmerling

Field Summary
 
Fields inherited from class de.grogra.ray2.tracing.RadiationModel
BUNDLE_SIZE
 
Constructor Summary
LightModelProcessor(Scene scene, int[] idToGroup)
          Create a new light model processor that uses the given spectrum factory.
LightModelProcessor(Scene scene, ObjectList<Spectrum> radiantPowerSum, ObjectList<Spectrum> sensedIrridiancSum, int[] idToGroup)
          Create a new light model processor that uses the given spectrum factory and adds collected radiation values to the lists.
 
Method Summary
 void compute(long rayCount, long seed, ProgressMonitor progress, int depth, double minPower)
           
 LightModelProcessor dup(Scene scene)
           
protected  void initLocals()
           
 
Methods inherited from class de.grogra.ray2.tracing.RadiationModel
getAbsorbedPower, getAbsorbedPowerCollector, getSensedIrradiance, getSensedIrradianceCollector
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

LightModelProcessor

public LightModelProcessor(Scene scene,
                           int[] idToGroup)
Create a new light model processor that uses the given spectrum factory.

Parameters:
scene -

LightModelProcessor

public LightModelProcessor(Scene scene,
                           ObjectList<Spectrum> radiantPowerSum,
                           ObjectList<Spectrum> sensedIrridiancSum,
                           int[] idToGroup)
Create a new light model processor that uses the given spectrum factory and adds collected radiation values to the lists.

Parameters:
scene - a scene
radiantPowerSum -
sensedIrradianceSum -
Method Detail

compute

public void compute(long rayCount,
                    long seed,
                    ProgressMonitor progress,
                    int depth,
                    double minPower)
Specified by:
compute in class RadiationModel

dup

public LightModelProcessor dup(Scene scene)

initLocals

protected void initLocals()