The SBDColorPaletteQualitative class is a base class for qualitative color palettes. More...
Constructors and destructors | |
SBDColorPaletteQualitative () | |
Default constructor. | |
SBDColorPaletteQualitative (int hue1, int hue2, int chroma=50, int luminance=70, std::string name=std::string("")) | |
SBDColorPaletteQualitative (const SBDColorPaletteQualitative *const otherColorPalette) | |
Copy constructor. | |
virtual | ~SBDColorPaletteQualitative () |
Serialization | |
bool | isSerializable () const |
Returns true. | |
virtual void | serialize (SBCSerializer *serializer, const SBNodeIndexer &nodeIndexer, const SBVersionNumber &sdkVersionNumber=SB_SDK_VERSION_NUMBER, const SBVersionNumber &classVersionNumber=SBVersionNumber(1, 0, 0)) const |
Serializes the document. | |
virtual void | unserialize (SBCSerializer *serializer, const SBNodeIndexer &nodeIndexer, const SBVersionNumber &sdkVersionNumber=SB_SDK_VERSION_NUMBER, const SBVersionNumber &classVersionNumber=SBVersionNumber(1, 0, 0)) |
Unserializes the document. | |
Getter and setter functions | |
virtual SBDColorPaletteQualitative * | clone () const |
Clones the color palette. | |
int | getHue1 () const |
Returns the starting value for the first coordinate. | |
void | setHue1 (int hue1) |
Sets the starting value for the first coordinate. | |
int | getHue2 () const |
Returns the end value for the first coordinate. | |
void | setHue2 (int hue2) |
Sets the end value for the first coordinate. | |
void | setHue (int hue1, int hue2) |
Sets the parameters for the first coordinate. | |
int | getChroma () const |
Returns the value for the second coordinate. | |
void | setChroma (int chroma) |
Sets the value for the second coordinate. | |
int | getLuminance () const |
Returns the value for the third coordinate. | |
void | setLuminance (int luminance) |
Sets the value for the third coordinate. | |
Palette functions | |
void | getColor (float *color, float value) const |
Computes sRGB color color based on this palette for the given intensity value value which should be in the range [0.0, 1.0]. | |
virtual void | getColorInPaletteColorSpace (float *color, float &value) const |
Computes color coordinates color in this palette's color space for the given intensity value value which should be in the range [0.0, 1.0]. More... | |
Palette parameters | |
int | hue1 |
The starting value for the first coordinate. | |
int | hue2 |
The end value for the first coordinate. | |
int | chroma |
The value of the second coordinate. | |
int | luminance |
The value of the third coordinate. | |
Additional Inherited Members | |
Public Types inherited from SBDColorPalette | |
enum | ColorPaletteType { Custom, Qualitative, Sequential, Diverging } |
Public Member Functions inherited from SBDColorPalette | |
SBDColorPalette () | |
Default constructor. | |
virtual | ~SBDColorPalette () |
bool | isSerializable () const |
Returns true. | |
ColorPaletteType | getType () const |
Returns the type of the color palette. | |
void | setType (SBDColorPalette::ColorPaletteType paletteType) |
Sets the type of the color palette. | |
const std::string & | getName () const |
Returns the palette's name. | |
void | setName (const std::string &name) |
Sets the palette's name to name . | |
Protected Member Functions inherited from SBDColorPalette | |
float | getValueAlongLinearTrajectory (float y1, float y2, float power, float x) const |
Returns a value along the "linear" trajectory. More... | |
float | getValueAlongTriangularTrajectory (float y1, float ymax, float y2, float power, float x) const |
Returns a value along "triangular" trajectory. More... | |
Protected Attributes inherited from SBDColorPalette | |
ColorPaletteType | paletteType |
Palette's type. | |
std::string * | name |
Palette's name. | |
A qualitative palette is constructed in a 3D color coordinate space with coordinates named h, c, and l, where the coordinate h can have an arbitrary value, and coordinates c and l are constant: h = hue1 + i * (hue2 - hue1) c = const l = const where i is a value (of intensity or interestingness) based on which the colorization should be done.
Coordinate h can designate e.g. hue (as in HCL, HSV, HSL color spaces). Coordinate c can designate e.g. chroma (as in HCL color space) or saturation (as in HSV, HSL color spaces). Coordinate l can designate e.g. luminance (as in HCL color space), lightning (as in HSL color space), or another value (as in HSV color space).
|
virtual |
SBDColorPaletteQualitative::getColorInPaletteColorSpace - Computes color coordinates color
in this palette's color space for the given intensity value value
.
color | - an array for color coordinates (float[3]). |
value | - an intensity value based on which the resulting color is computed, the intensity value should be in range [0.0, 1.0] where 1 corresponds to the full intensity. |
Reimplemented from SBDColorPalette.
Reimplemented in SBDColorPaletteQualitativeHCL.