org.sunflow.image
Class IrregularSpectralCurve
public class IrregularSpectralCurve
This class allows spectral curves to be defined from irregularly sampled
data. Note that the wavelength array is assumed to be sorted low to high. Any
values beyond the defined range will simply be extended to infinity from the
end points. Points inside the valid range will be linearly interpolated
between the two nearest samples. No explicit error checking is performed, but
this class will run into ArrayIndexOutOfBoundsException
s if the
array lengths don't match.
IrregularSpectralCurve(float[] wavelengths, float[] amplitudes) - Define an irregular spectral curve from the provided (sorted) wavelengths
and amplitude data.
|
float | sample(float lambda) - This function determines the actual spectral curve data.
|
IrregularSpectralCurve
public IrregularSpectralCurve(float[] wavelengths,
float[] amplitudes)
Define an irregular spectral curve from the provided (sorted) wavelengths
and amplitude data. The wavelength array is assumed to contain values in
nanometers. Array lengths must match.
wavelengths
- sampled wavelengths in nmamplitudes
- amplitude of the curve at the sampled points
sample
public float sample(float lambda)
This function determines the actual spectral curve data. Note that the
lambda parameter is assumed to be in nanometers.
- sample in interface SpectralCurve
lambda
- wavelength to sample in nanometers
- the value of the spectral curve at this point