de.grogra.ray.physics
public interface Collector extends Spectrum
LightModel. Its an extension of the Spectrum interface,
which means, that every Collector - instance can handled as a Spectrum
instance.
Every implementation of this interface is also a certain specialized
Spectrum.| Modifier and Type | Method and Description |
|---|---|
void |
add(Collector collector)
This method combines to collectors to one single collector
by add every corresponding value.
|
void |
addToStatistic(Tuple3d tuple,
Spectrum spectrum,
double scaleFactor,
boolean isPrimary)
Here the information of
LightModel computation are stored. |
Collector |
clone()
Returns a clone of this collector.
|
void |
getCollectedValues(Tuple3d sumDir,
Tuple3d sumSquareDir,
Tuple3d sumSpec,
Tuple3d sumSquareSpec) |
void |
getDirectionArithmeticMean(Tuple3d tuple)
Set the arithmetic mean of all directions (not normalized) to
vector. |
void |
getDirectionVariance(Tuple3d tuple)
This methods returns the variance of the light-direction (not normalized).
|
long |
getRayCount()
Returns the number of rays, which hits the corresponding object.
|
void |
getSpectrumArithmeticMean(Spectrum spectrum)
Set the arithmetic mean of all spectra to
vector. |
void |
getSpectrumVariance(Spectrum spectrum)
This methods returns the variance of the spectra.
|
boolean |
isCollector()
Return the state if this instance working as Collector or just as an
Spectrum. |
Collector |
newInstance()
Returns a new instance of the class of this collector.
|
void |
setAsCollector()
The collector works like a
Spectrum after initializing. |
void add(Collector collector)
collector - which has to be added to the corresponding instance.void addToStatistic(Tuple3d tuple, Spectrum spectrum, double scaleFactor, boolean isPrimary)
LightModel computation are stored.Collector clone()
void getCollectedValues(Tuple3d sumDir, Tuple3d sumSquareDir, Tuple3d sumSpec, Tuple3d sumSquareSpec)
void getDirectionArithmeticMean(Tuple3d tuple)
vector. The parameter vector should
be initialized before.vector - Returns the arithmetic mean of all direction
for this Collector-instance.void getDirectionVariance(Tuple3d tuple)
long getRayCount()
void getSpectrumArithmeticMean(Spectrum spectrum)
vector.
The parameter vector should be initialized before.vector - Returns the arithmetic mean of all spectra
for this Collector-instance.void getSpectrumVariance(Spectrum spectrum)
boolean isCollector()
Spectrum.Collector newInstance()
newInstance in interface Spectrumvoid setAsCollector()
Spectrum after initializing.
Thats useful when this Collector-instance is used for the calculations
in LightModel.