java.lang.Object
de.grogra.ray2.tracing.ProcessorBase
de.grogra.ray2.tracing.RayProcessorBase
de.grogra.ray2.tracing.PathTracer
de.grogra.ray2.tracing.BiDirectionalProcessor
de.grogra.ray2.tracing.MetropolisProcessor
- All Implemented Interfaces:
RayProcessor,Cloneable
-
Nested Class Summary
Nested classes/interfaces inherited from class de.grogra.ray2.tracing.RayProcessorBase
RayProcessorBase.Locals -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final Stringintprotected intintintintstatic final Stringprotected longstatic booleanprotected longFields inherited from class de.grogra.ray2.tracing.BiDirectionalProcessor
bestLight, bestS, bestT, EYEPATH_DEPTH, HEURISTIC_FACTOR, isMetropolis, LIGHTPATH_DEPTH, lineTracer, loacalCausticMap, tracingMediatorFields inherited from class de.grogra.ray2.tracing.PathTracer
BRIGHTNESSFields inherited from class de.grogra.ray2.tracing.RayProcessorBase
enteredSolids, RECURSION_DEPTH, scene -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected voidappendStatisticsImpl(StringBuffer stats) Returns a clone of thisRayProcessor.voidgetColorFromRay(Line ray, Spectrum resp, Color4f color, Random random) The main method of a ray processor.intvoidinitialize(PixelwiseRenderer renderer, Scene scene) With this method the processor is initialized with the scene and other information of aPixelwiseRenderer.voidinitializeLoop(float brightness, int imageWidth, int imageHeight, int mutatedPixPerProc, MetropolisRenderer.MetropolisResult result, int procId) voidvoidvoidresetAll()voidsetMinMaxPathLength(int testLength) Methods inherited from class de.grogra.ray2.tracing.BiDirectionalProcessor
chooseBestPathCombination, initializeBeforeTracingMethods inherited from class de.grogra.ray2.tracing.PathTracer
initLocals, mergeStatisticsMethods inherited from class de.grogra.ray2.tracing.RayProcessorBase
getIOR, getLightProcessor, setLightProcessor, setRecursionDepthMethods inherited from class de.grogra.ray2.tracing.ProcessorBase
appendStatistics, cloneMethods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface de.grogra.ray2.tracing.RayProcessor
appendStatistics
-
Field Details
-
CORRECTION_FACTOR
- See Also:
-
MUTATION_PP_COUNT
- See Also:
-
minimalPathLength
public int minimalPathLength -
maximalPathLength
public int maximalPathLength -
stopped
public static boolean stopped -
imageWidth
public int imageWidth -
imageHeight
public int imageHeight -
imageUpdateRate
protected int imageUpdateRate -
nextImageUpdateTime
protected long nextImageUpdateTime -
timeDiff
protected long timeDiff
-
-
Constructor Details
-
MetropolisProcessor
public MetropolisProcessor()
-
-
Method Details
-
dup
Description copied from interface:RayProcessorReturns a clone of thisRayProcessor. All constant variables are copied shallowly, state variables are newly created and copied where necessary.- Specified by:
dupin interfaceRayProcessor- Overrides:
dupin classBiDirectionalProcessor- Parameters:
scene- duplicate of scene- Returns:
- clone of this ray processor
-
initialize
Description copied from interface:RayProcessorWith this method the processor is initialized with the scene and other information of aPixelwiseRenderer.- Specified by:
initializein interfaceRayProcessor- Overrides:
initializein classBiDirectionalProcessor- Parameters:
renderer- the renderer which provides the needed informationscene- the scene which is rendered
-
setMinMaxPathLength
public void setMinMaxPathLength(int testLength) -
getColorFromRay
Description copied from interface:RayProcessorThe main method of a ray processor. This method computes acolorfor the specifiedray.color.wcontains the alpha value for the ray, the other components are premultiplied with this alpha value.- Specified by:
getColorFromRayin interfaceRayProcessor- Overrides:
getColorFromRayin classBiDirectionalProcessor- Parameters:
ray- input - calculate for this rayresp- responsivity of cameracolor- output - the calculated colorrandom- pseudorandom generator
-
mergeWithRenderer
public void mergeWithRenderer() -
resetAll
public void resetAll() -
initializeLoop
public void initializeLoop(float brightness, int imageWidth, int imageHeight, int mutatedPixPerProc, MetropolisRenderer.MetropolisResult result, int procId) -
getResult
-
getMutatedPixels
public int getMutatedPixels() -
appendStatisticsImpl
- Overrides:
appendStatisticsImplin classBiDirectionalProcessor
-
pathChanged
public void pathChanged()
-