RGB color data type. More...
#include <mitsuba/core/spectrum.h>
Public Types | |
typedef TSpectrum< Float, 3 > | Parent |
Public Types inherited from mitsuba::TSpectrum< Float, 3 > | |
typedef Float | Scalar |
Public Member Functions | |
Color3 () | |
Create a new color value, but don't initialize the contents. More... | |
Color3 (const Parent &s) | |
Copy constructor. More... | |
Color3 (Float value) | |
Initialize to a constant value. More... | |
Color3 (Float r, Float g, Float b) | |
Initialize to the given RGB value. More... | |
Float | getLuminance () const |
Return the luminance (assuming the color value is expressed in linear sRGB) More... | |
Public Member Functions inherited from mitsuba::TSpectrum< Float, 3 > | |
TSpectrum () | |
Create a new spectral power distribution, but don't initialize the contents. More... | |
TSpectrum (Scalar v) | |
Create a new spectral power distribution with all samples set to the given value. More... | |
TSpectrum (Scalar spec[N]) | |
Copy a spectral power distribution. More... | |
TSpectrum (Stream *stream) | |
Unserialize a spectral power distribution from a binary data stream. More... | |
TSpectrum (const TSpectrum< AltScalar, N > &v) | |
Initialize with a TSpectrum data type based on a alternate representation. More... | |
TSpectrum | operator+ (const TSpectrum &spec) const |
Add two spectral power distributions. More... | |
TSpectrum & | operator+= (const TSpectrum &spec) |
Add a spectral power distribution to this instance. More... | |
TSpectrum | operator- (const TSpectrum &spec) const |
Subtract a spectral power distribution. More... | |
TSpectrum | operator- () const |
Negate. More... | |
TSpectrum & | operator-= (const TSpectrum &spec) |
Subtract a spectral power distribution from this instance. More... | |
TSpectrum | operator* (Scalar f) const |
Multiply by a scalar. More... | |
TSpectrum | operator* (const TSpectrum &spec) const |
Perform a component-wise multiplication by another spectrum. More... | |
TSpectrum & | operator*= (Scalar f) |
Multiply by a scalar. More... | |
TSpectrum & | operator*= (const TSpectrum &spec) |
Perform a component-wise multiplication by another spectrum. More... | |
TSpectrum & | operator/= (const TSpectrum &spec) |
Perform a component-wise division by another spectrum. More... | |
TSpectrum & | operator/= (Scalar f) |
Divide by a scalar. More... | |
TSpectrum | operator/ (const TSpectrum &spec) const |
Perform a component-wise division by another spectrum. More... | |
TSpectrum | operator/ (Scalar f) const |
Divide by a scalar. More... | |
bool | operator== (const TSpectrum &spec) const |
Equality test. More... | |
bool | operator!= (const TSpectrum &spec) const |
Inequality test. More... | |
bool | isNaN () const |
Check for NaNs. More... | |
bool | isValid () const |
Returns whether the spectrum only contains valid (non-NaN, nonnegative) samples. More... | |
void | addWeighted (Scalar weight, const TSpectrum &spec) |
Multiply-accumulate operation, adds weight * spec. More... | |
Scalar | average () const |
Return the average over all wavelengths. More... | |
TSpectrum | abs () const |
Component-wise absolute value. More... | |
TSpectrum | sqrt () const |
Component-wise square root. More... | |
TSpectrum | safe_sqrt () const |
Component-wise square root. More... | |
TSpectrum | log () const |
Component-wise logarithm. More... | |
TSpectrum | exp () const |
Component-wise exponentation. More... | |
TSpectrum | pow (Scalar f) const |
Component-wise power. More... | |
void | clampNegative () |
Clamp negative values. More... | |
Scalar | max () const |
Return the highest-valued spectral sample. More... | |
Scalar | min () const |
Return the lowest-valued spectral sample. More... | |
Scalar & | operator[] (int entry) |
Indexing operator. More... | |
Scalar | operator[] (int entry) const |
Indexing operator. More... | |
bool | isZero () const |
Check if this spectrum is zero at all wavelengths. More... | |
void | serialize (Stream *stream) const |
Serialize this spectrum to a stream. More... | |
std::string | toString () const |
Additional Inherited Members | |
Static Public Attributes inherited from mitsuba::TSpectrum< Float, 3 > | |
static const int | dim |
Number of dimensions. More... | |
Protected Attributes inherited from mitsuba::TSpectrum< Float, 3 > | |
Scalar | s [N] |
RGB color data type.
typedef TSpectrum<Float, 3> mitsuba::Color3::Parent |
|
inline |
Create a new color value, but don't initialize the contents.
|
inline |
Copy constructor.
|
inline |
Initialize to a constant value.
|
inline |
Return the luminance (assuming the color value is expressed in linear sRGB)