de.grogra.ray2.antialiasing
Class MetropolisAntiAliasing

java.lang.Object
  extended by de.grogra.ray2.tracing.ProcessorBase
      extended by de.grogra.ray2.antialiasing.NoAntialiasing
          extended by de.grogra.ray2.antialiasing.MetropolisAntiAliasing
All Implemented Interfaces:
Antialiasing, java.lang.Cloneable

public class MetropolisAntiAliasing
extends NoAntialiasing


Field Summary
static java.lang.String MUTATION_PP_COUNT
           
static java.lang.String SEED_COUNT
           
 
Fields inherited from class de.grogra.ray2.antialiasing.NoAntialiasing
processor
 
Constructor Summary
MetropolisAntiAliasing()
           
 
Method Summary
 Antialiasing dup(Scene scene)
          Returns a clone of this Antialiasing.
 Line getNewLensEdge()
           
 Line getPerturbedLensEdge(Line oldRay)
           
 int getProcessorMutatedPixels()
           
 Line getRayByCoordinates(double x, double y, double width, double height, java.util.Random random)
           
 Line getStratifiedLensEdge()
           
 void initialize(PixelwiseRenderer renderer, Scene scene)
          Initializes the antialiasing method using the data available through the renderer.
 void initializeProccessorLoop(float brightness, int imageWidth, int imageHeight, int mutatedPixPerProc, MetropolisRenderer.MetropolisResult result, int procId)
           
 void pathChanged()
           
 void registerUsedLensEdge(float x, float y)
           
 void resetAll()
           
 void setImageValues(int width, int height)
           
 void setPixelXY(float x, float y)
           
 void signAntialiser2Processor()
           
 void stopProcessor()
           
 
Methods inherited from class de.grogra.ray2.antialiasing.NoAntialiasing
appendStatisticsImpl, getColorOfRectangle, initLocals
 
Methods inherited from class de.grogra.ray2.tracing.ProcessorBase
appendStatistics, clone, mergeStatistics
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface de.grogra.ray2.antialiasing.Antialiasing
appendStatistics
 

Field Detail

MUTATION_PP_COUNT

public static final java.lang.String MUTATION_PP_COUNT
See Also:
Constant Field Values

SEED_COUNT

public static final java.lang.String SEED_COUNT
See Also:
Constant Field Values
Constructor Detail

MetropolisAntiAliasing

public MetropolisAntiAliasing()
Method Detail

dup

public Antialiasing dup(Scene scene)
Description copied from interface: Antialiasing
Returns a clone of this Antialiasing. All constant variables are copied shallowly, state variables are newly created and copied where necessary.

Specified by:
dup in interface Antialiasing
Overrides:
dup in class NoAntialiasing
Parameters:
scene - duplicate of scene
Returns:
clone of this antialiasing

getNewLensEdge

public Line getNewLensEdge()

getPerturbedLensEdge

public Line getPerturbedLensEdge(Line oldRay)

getProcessorMutatedPixels

public int getProcessorMutatedPixels()

getRayByCoordinates

public Line getRayByCoordinates(double x,
                                double y,
                                double width,
                                double height,
                                java.util.Random random)

getStratifiedLensEdge

public Line getStratifiedLensEdge()

initialize

public void initialize(PixelwiseRenderer renderer,
                       Scene scene)
Description copied from interface: Antialiasing
Initializes the antialiasing method using the data available through the renderer.

Specified by:
initialize in interface Antialiasing
Overrides:
initialize in class NoAntialiasing
Parameters:
renderer - the renderer which provides the needed information
scene - the scene which is rendered

initializeProccessorLoop

public void initializeProccessorLoop(float brightness,
                                     int imageWidth,
                                     int imageHeight,
                                     int mutatedPixPerProc,
                                     MetropolisRenderer.MetropolisResult result,
                                     int procId)

pathChanged

public void pathChanged()

registerUsedLensEdge

public void registerUsedLensEdge(float x,
                                 float y)

resetAll

public void resetAll()

setImageValues

public void setImageValues(int width,
                           int height)

setPixelXY

public void setPixelXY(float x,
                       float y)
Specified by:
setPixelXY in interface Antialiasing
Overrides:
setPixelXY in class NoAntialiasing

signAntialiser2Processor

public void signAntialiser2Processor()

stopProcessor

public void stopProcessor()