java.lang.Object
de.grogra.ray2.tracing.ProcessorBase
de.grogra.ray2.tracing.RayProcessorBase
de.grogra.ray2.tracing.PathTracer
de.grogra.ray2.tracing.modular.LineTracer
- All Implemented Interfaces:
RayProcessor
,Cloneable
-
Nested Class Summary
Nested classes/interfaces inherited from class de.grogra.ray2.tracing.RayProcessorBase
RayProcessorBase.Locals
-
Field Summary
Modifier and TypeFieldDescriptionint
static final int
static final int
static final int
static final int
static final int
static final int
int
static final int
int
boolean
Fields inherited from class de.grogra.ray2.tracing.PathTracer
BRIGHTNESS
Fields inherited from class de.grogra.ray2.tracing.RayProcessorBase
enteredSolids, RECURSION_DEPTH, renderer, scene, sumColor
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionint
void
initialize
(PixelwiseRenderer renderer, Scene scene) With this method the processor is initialized with the scene and other information of aPixelwiseRenderer
.void
set2LightPathTracing
(boolean isLightRay) Defines if this tracing is about light ray tracing or importance ray tracingvoid
setCondition
(ConditionObject cond) void
setMaxDepth
(int maxDepth) Defines the maximum depth of recursion, where maxDepth is the index of the last path vertexvoid
void
setSafeMemoryMode
(MemoryHelper helper) traceLine
(int maxDepth, PathValues pathValues, Line startLine, Spectrum initialWeight, int sourceID, boolean isLightRay, Random random) This function traces a Line(=ray) throug the scene starting at the first path vertex (index =0)void
traceSubPath
(PathValues srcPath, int startVertex, int newVertexCount, boolean isLightRay, Vector3d direction) Methods inherited from class de.grogra.ray2.tracing.PathTracer
appendStatisticsImpl, initLocals, mergeStatistics
Methods inherited from class de.grogra.ray2.tracing.RayProcessorBase
dup, getColorFromRay, getIOR, getLightProcessor, initializeBeforeTracing, setLightProcessor, setRecursionDepth
Methods inherited from class de.grogra.ray2.tracing.ProcessorBase
appendStatistics, clone
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface de.grogra.ray2.tracing.RayProcessor
appendStatistics
-
Field Details
-
SPECULAR_CONDITION
public static final int SPECULAR_CONDITION- See Also:
-
STOP_CONDITION
public int STOP_CONDITION -
condition
-
abbortCode
public int abbortCode -
MAX_DEPTH_REACHED
public static final int MAX_DEPTH_REACHED- See Also:
-
NO_OBJECT_HIT
public static final int NO_OBJECT_HIT- See Also:
-
OUTGOING_RAY_TOO_WEAK
public static final int OUTGOING_RAY_TOO_WEAK- See Also:
-
RAY_WAS_INFINITE
public static final int RAY_WAS_INFINITE- See Also:
-
RAY_WAS_ABSORBED
public static final int RAY_WAS_ABSORBED- See Also:
-
RAY_WAS_STOPPED_ON_CONDITION
public static final int RAY_WAS_STOPPED_ON_CONDITION- See Also:
-
traceSubPath
public boolean traceSubPath -
recursionCounter
public int recursionCounter
-
-
Constructor Details
-
LineTracer
-
-
Method Details
-
initialize
Description copied from interface:RayProcessor
With this method the processor is initialized with the scene and other information of aPixelwiseRenderer
.- Specified by:
initialize
in interfaceRayProcessor
- Overrides:
initialize
in classPathTracer
- Parameters:
renderer
- the renderer which provides the needed informationscene
- the scene which is rendered
-
setRandom
-
setMaxDepth
public void setMaxDepth(int maxDepth) Defines the maximum depth of recursion, where maxDepth is the index of the last path vertex- Parameters:
maxDepth
-
-
set2LightPathTracing
public void set2LightPathTracing(boolean isLightRay) Defines if this tracing is about light ray tracing or importance ray tracing- Parameters:
isLightRay
-
-
traceLine
public PathValues traceLine(int maxDepth, PathValues pathValues, Line startLine, Spectrum initialWeight, int sourceID, boolean isLightRay, Random random) This function traces a Line(=ray) throug the scene starting at the first path vertex (index =0)- Parameters:
maxDepth
- - the maximum path depth (=the index of the last path vertex)pathValues
- - In this pathvalue-instance the results of the tracing will be storedstartLine
- - the inital line, which has to be traced furtherinitialWeight
- - the weight of the initial linesourceID
- - the id of the line source (light or camera)isLightRay
- - the boolean for checking, wether this is line is a light ray or importance rayrandom
- - the randomizer- Returns:
- the path result
-
getPathValues
-
setCondition
-
traceSubPath
public void traceSubPath(PathValues srcPath, int startVertex, int newVertexCount, boolean isLightRay, Vector3d direction) -
setSafeMemoryMode
-
getAbbortCode
public int getAbbortCode() -
getTracingAbbortDescription
-
printIList
-