de.grogra.ray2.tracing
public class MetropolisProcessor extends BiDirectionalProcessor
RayProcessorBase.Locals| Modifier and Type | Field and Description |
|---|---|
static java.lang.String |
CORRECTION_FACTOR |
int |
imageHeight |
protected int |
imageUpdateRate |
int |
imageWidth |
int |
maximalPathLength |
int |
minimalPathLength |
static java.lang.String |
MUTATION_PP_COUNT |
protected long |
nextImageUpdateTime |
static boolean |
stopped |
protected long |
timeDiff |
bestLight, bestS, bestT, EYEPATH_DEPTH, HEURISTIC_FACTOR, isMetropolis, LIGHTPATH_DEPTH, lineTracer, loacalCausticMap, tracingMediatorBRIGHTNESSenteredSolids, RECURSION_DEPTH, scene| Constructor and Description |
|---|
MetropolisProcessor() |
| Modifier and Type | Method and Description |
|---|---|
protected void |
appendStatisticsImpl(java.lang.StringBuffer stats) |
RayProcessor |
dup(Scene scene)
Returns a clone of this
RayProcessor. |
void |
getColorFromRay(Line ray,
Spectrum resp,
Color4f color,
java.util.Random random)
The main method of a ray processor.
|
int |
getMutatedPixels() |
PixelwiseRenderer.Result |
getResult() |
void |
initialize(PixelwiseRenderer renderer,
Scene scene)
With this method the processor is initialized with the scene
and other information of a
PixelwiseRenderer. |
void |
initializeLoop(float brightness,
int imageWidth,
int imageHeight,
int mutatedPixPerProc,
MetropolisRenderer.MetropolisResult result,
int procId) |
void |
mergeWithRenderer() |
void |
pathChanged() |
void |
resetAll() |
void |
setMinMaxPathLength(int testLength) |
chooseBestPathCombination, initializeBeforeTracinginitLocals, mergeStatisticsgetIOR, getLightProcessor, setLightProcessor, setRecursionDepthappendStatistics, cloneequals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitappendStatisticspublic static final java.lang.String CORRECTION_FACTOR
public int imageHeight
protected int imageUpdateRate
public int imageWidth
public int maximalPathLength
public int minimalPathLength
public static final java.lang.String MUTATION_PP_COUNT
protected long nextImageUpdateTime
public static boolean stopped
protected long timeDiff
protected void appendStatisticsImpl(java.lang.StringBuffer stats)
appendStatisticsImpl in class BiDirectionalProcessorpublic RayProcessor dup(Scene scene)
RayProcessorRayProcessor.
All constant variables are copied shallowly, state variables
are newly created and copied where necessary.dup in interface RayProcessordup in class BiDirectionalProcessorscene - duplicate of scenepublic void getColorFromRay(Line ray, Spectrum resp, Color4f color, java.util.Random random)
RayProcessorcolor for the specified ray.
color.w contains
the alpha value for the ray, the other components are
premultiplied with this alpha value.getColorFromRay in interface RayProcessorgetColorFromRay in class BiDirectionalProcessorray - input - calculate for this rayresp - responsivity of cameracolor - output - the calculated colorrandom - pseudorandom generatorpublic int getMutatedPixels()
public PixelwiseRenderer.Result getResult()
public void initialize(PixelwiseRenderer renderer, Scene scene)
RayProcessorPixelwiseRenderer.initialize in interface RayProcessorinitialize in class BiDirectionalProcessorrenderer - the renderer which provides the needed informationscene - the scene which is renderedpublic void initializeLoop(float brightness,
int imageWidth,
int imageHeight,
int mutatedPixPerProc,
MetropolisRenderer.MetropolisResult result,
int procId)
public void mergeWithRenderer()
public void pathChanged()
public void resetAll()
public void setMinMaxPathLength(int testLength)