de.grogra.ray.tracing
Class PathTracerHS

java.lang.Object
  extended by de.grogra.ray.tracing.PathTracerHS
All Implemented Interfaces:
RayProcessor

public class PathTracerHS
extends java.lang.Object
implements RayProcessor


Constructor Summary
PathTracerHS()
           
PathTracerHS(int depth)
           
 
Method Summary
 void getColorFromRay(Ray ray, Color4f color)
          The main methode of a ray processor.
 LightProcessor getLightProcessor()
           
 Ray getMostProbableRay(RayList rays, int seed)
           
 int getRecursionDepth()
           
 boolean hasFixedLightProcessor()
           
 boolean isPhysicalValid()
           
 void prepareRayProcessor(RTScene scene, IntersectionProcessor intersectionProcessor)
          With this method the processor is initialized with a 3d scene and an intersection processor it will use.
 void setIntersectionProcessor(IntersectionProcessor processor)
           
 void setLightProcessor(LightProcessor model)
           
 void setPhysicalValid(boolean valid)
           
 void setRecursionDepth(int value)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

PathTracerHS

public PathTracerHS()

PathTracerHS

public PathTracerHS(int depth)
Method Detail

getColorFromRay

public void getColorFromRay(Ray ray,
                            Color4f color)
Description copied from interface: RayProcessor
The main methode of a ray processor. This methode has to calculate a color (or luminance of the red, gren and blue ) for each ray.

Specified by:
getColorFromRay in interface RayProcessor
Parameters:
ray - input - calculate for this ray
color - output - the calculated color

getLightProcessor

public LightProcessor getLightProcessor()
Specified by:
getLightProcessor in interface RayProcessor

getMostProbableRay

public Ray getMostProbableRay(RayList rays,
                              int seed)

getRecursionDepth

public int getRecursionDepth()
Specified by:
getRecursionDepth in interface RayProcessor

hasFixedLightProcessor

public boolean hasFixedLightProcessor()
Specified by:
hasFixedLightProcessor in interface RayProcessor

isPhysicalValid

public boolean isPhysicalValid()

prepareRayProcessor

public void prepareRayProcessor(RTScene scene,
                                IntersectionProcessor intersectionProcessor)
Description copied from interface: RayProcessor
With this method the processor is initialized with a 3d scene and an intersection processor it will use.

Specified by:
prepareRayProcessor in interface RayProcessor

setIntersectionProcessor

public void setIntersectionProcessor(IntersectionProcessor processor)

setLightProcessor

public void setLightProcessor(LightProcessor model)
Specified by:
setLightProcessor in interface RayProcessor

setPhysicalValid

public void setPhysicalValid(boolean valid)

setRecursionDepth

public void setRecursionDepth(int value)
Specified by:
setRecursionDepth in interface RayProcessor