Class SBDPaletteDivergingHCL#
ClassList > SBDPaletteDivergingHCL
The SBDPaletteDivergingHCL class is a class for the diverging HCL (Hue-Chroma-Luminance) color palette.More...
#include <SBDPaletteDivergingHCL.hpp>
Inherits the following classes: SBDPaletteDiverging
Public Types inherited from SBDPalette#
See SBDPalette
Type | Name |
---|---|
enum | PaletteType |
Public Functions#
Type | Name |
---|---|
SBDPaletteDivergingHCL () Default constructor. |
|
SBDPaletteDivergingHCL (int hue1, int hue2, int chroma1=50, int maximumChroma=50, int luminance1=70, int luminance2=70, float chromaPower=1.0f, float luminancePower=1.0f, float neutralPoint=0.5f, std::string name=std::string(""), bool reverse=false) |
|
SBDPaletteDivergingHCL (const SBDPaletteDivergingHCL & otherColorPalette) Copy constructor. |
|
virtual SBDPaletteDivergingHCL * | clone () override const Clones the color palette. |
virtual void | getColor (float * color, float value) override const Computes sRGB color color based on this palette for the given intensity valuevalue which should be in the range [0.0, 1.0]. |
virtual void | getColorInPaletteColorSpace (float * color, float value) override const Computes color coordinates color in this palette's color space for the given intensity valuevalue which should be in the range [0.0, 1.0]. |
virtual bool | isSerializable () override const Returns true. |
virtual void | serialize (SBCSerializer * serializer, const SBVersionNumber & sdkVersionNumber=SB_SDK_VERSION_NUMBER, const SBVersionNumber & classVersionNumber=SBVersionNumber(1, 0, 0)) override const Serializes the document. |
virtual std::string | toPythonCode () const Returns the string representation of the object that can be used to reconstruct it in Python. |
virtual void | unserialize (SBCSerializer * serializer, const SBVersionNumber & sdkVersionNumber=SB_SDK_VERSION_NUMBER, const SBVersionNumber & classVersionNumber=SBVersionNumber(1, 0, 0)) override Unserializes the document. |
virtual | ~SBDPaletteDivergingHCL () |
Public Functions inherited from SBDPaletteDiverging#
Type | Name |
---|---|
SBDPaletteDiverging () Default constructor. |
|
SBDPaletteDiverging (int hue1, int hue2, int chroma1=50, int maximumChroma=50, int luminance1=70, int luminance2=70, float chromaPower=1.0f, float luminancePower=1.0f, float neutralPoint=0.5f, std::string name=std::string(""), bool reverse=false) |
|
SBDPaletteDiverging (const SBDPaletteDiverging & otherColorPalette) Copy constructor. |
|
virtual SBDPaletteDiverging * | clone () override const Clones the color palette. |
int | getChroma1 () const Returns the starting value for the second coordinate. |
float | getChromaPower () const Returns the power of the intensity value for the computation of the second coordinate. |
virtual void | getColor (float * color, float value) override const Computes sRGB color color based on this palette for the given intensity valuevalue which should be in the range [0.0, 1.0]. |
virtual void | getColorInPaletteColorSpace (float * color, float value) override const Computes color coordinates color in this palette's color space for the given intensity valuevalue which should be in the range [0.0, 1.0]. |
int | getHue1 () const Returns the starting value for the first coordinate. |
int | getHue2 () const Returns the end value for the first coordinate. |
int | getLuminance1 () const Returns the starting value for the third coordinate. |
int | getLuminance2 () const Returns the end value for the third coordinate. |
float | getLuminancePower () const Returns the power of the intensity value for the computation of the third coordinate. |
int | getMaximumChroma () const Returns the max value for the second coordinate for the triangular trajectory. |
float | getNeutralPoint () const Returns the neutral point position. |
virtual PaletteType | getType () override const Returns the type of the color palette. |
virtual bool | isEqual (const SBDPalette & other) override const Returns whether this palette is equal to other . |
virtual bool | isSerializable () override const Returns true. |
virtual void | serialize (SBCSerializer * serializer, const SBVersionNumber & sdkVersionNumber=SB_SDK_VERSION_NUMBER, const SBVersionNumber & classVersionNumber=SBVersionNumber(1, 0, 0)) override const Serializes the document. |
void | setChroma (int chroma1, int maximumChroma, float chromaPower=1.0f) Sets the parameters for the second coordinate. |
void | setChroma1 (int chroma1) Sets the starting value for the second coordinate. |
void | setChromaPower (float chromaPower) Sets the power of the intensity value for the computation of the second coordinate, the power should be greater than 0. |
void | setHue (int hue1, int hue2) Sets the parameters for the first coordinate. |
void | setHue1 (int hue1) Sets the starting value for the first coordinate. |
void | setHue2 (int hue2) Sets the end value for the first coordinate. |
void | setLuminance (int luminance1, int luminance2, float luminancePower=1.0f) Sets the parameters for the third coordinate. |
void | setLuminance1 (int luminance1) Sets the starting value for the third coordinate. |
void | setLuminance2 (int luminance2) Sets the end value for the third coordinate. |
void | setLuminancePower (float luminancePower) Sets the power of the intensity value for the computation of the third coordinate, the power should be greater than 0. |
void | setMaximumChroma (int maximumChroma) Sets the max value for the second coordinate for the triangular trajectory, if it is less the chroma1 orchroma2 then it is not used and the linear trajectory is computed. |
void | setNeutralPoint (float neutralPoint) Sets the neutral point position, should be in the range [0.0, 1.0]. |
virtual std::string | toPythonCode () const Returns the string representation of the object that can be used to reconstruct it in Python. |
virtual void | unserialize (SBCSerializer * serializer, const SBVersionNumber & sdkVersionNumber=SB_SDK_VERSION_NUMBER, const SBVersionNumber & classVersionNumber=SBVersionNumber(1, 0, 0)) override Unserializes the document. |
virtual | ~SBDPaletteDiverging () |
Public Functions inherited from SBDPalette#
See SBDPalette
Type | Name |
---|---|
SBDPalette () Default constructor for HSV color palette. |
|
SBDPalette (bool reverse) Constructor for HSV color palette with reverse flag. |
|
virtual SBDPalette * | clone () const Clones the palette. |
SBColor | getColor (float value) const Returns SBColor based on the palette and an intensity value value . |
virtual void | getColor (float * color, float value) const Computes RGB color color based on the palette and an intensity valuevalue 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 valuevalue which should be in the range [0.0, 1.0]. |
const std::string & | getName () const Returns the palette's name. |
bool | getReverseFlag () const Returns the reverse flag - whether the color palette is mirrored or not. |
virtual PaletteType | getType () const Returns the type of the color palette. |
std::string | getTypeString (bool humanReadable=false) const Returns the string representation of the color palette type. |
virtual bool | isEqual (const SBDPalette & other) const Returns whether this palette is equal to other . |
virtual bool | isSerializable () const Returns true. |
bool | operator!= (const SBDPalette & other) const Non-equality operator. |
bool | operator== (const SBDPalette & other) const Equality operator. |
virtual void | serialize (SBCSerializer * serializer, const SBVersionNumber & sdkVersionNumber=SB_SDK_VERSION_NUMBER, const SBVersionNumber & classVersionNumber=SBVersionNumber(1, 0, 0)) const Serializes the document. |
void | setName (const std::string & name) Sets the palette's name to name . |
void | setReverseFlag (bool b) Sets the reverse flag - whether to mirror or not the color palette. |
virtual std::string | toPythonCode () const Returns the string representation of the object that can be used to reconstruct it in Python. |
virtual void | unserialize (SBCSerializer * serializer, const SBVersionNumber & sdkVersionNumber=SB_SDK_VERSION_NUMBER, const SBVersionNumber & classVersionNumber=SBVersionNumber(1, 0, 0)) Unserializes the document. |
virtual | ~SBDPalette () |
Public Static Functions inherited from SBDPalette#
See SBDPalette
Type | Name |
---|---|
std::string | getTypeString (PaletteType paletteType, bool humanReadable=false) Returns the string representation of the color palette type paletteType . |
float | getValueAlongLinearTrajectory (float y1, float y2, float power, float x) Returns a value along the "linear" trajectory. |
float | getValueAlongTriangularTrajectory (float y1, float ymax, float y2, float power, float x) Returns a value along "triangular" trajectory. |
Protected Attributes inherited from SBDPaletteDiverging#
Type | Name |
---|---|
int | chroma1 The starting value for the second coordinate. |
float | chromaPower The power of the intensity value for the computation of the second coordinate, the power should be greater than 0.0. |
int | hue1 The starting value for the first coordinate. |
int | hue2 The end value for the first coordinate. |
int | luminance1 The starting value for the third coordinate. |
int | luminance2 The end value for the third coordinate. |
float | luminancePower The power of the intensity value for the computation of the third coordinate, the power should be greater than 0.0. |
int | maximumChroma The max value for the second coordinate for the triangular trajectory, if it is less the chroma1 orchroma2 then it is not used and the linear trajectory is computed. |
float | neutralPoint The neutral point position, should be in the range [0.0, 1.0]. |
Protected Attributes inherited from SBDPalette#
See SBDPalette
Type | Name |
---|---|
std::string * | name The palette's name. |
bool | reverseFlag Reverse flag: if true, then the palette is reversed/mirrored. |
Detailed Description#
A diverging palette is constructed in a 3D color coordinate space with coordinates named Hue, Chroma, and Luminance. The diverging palette can be represented as two sequential palettes: one to the left (left arm) and another one to the right (right arm) from the diverging point (neutral point).
The value for Hue is constant for both arms:
hue = hue1
for the left arm (the intensity value less or equal thanneutralPoint
);hue = hue2
for the right arm (the intensity value greater thanneutralPoint
).
In each arms the Chroma value changes from chroma1
to 0.0
through maximumChroma
(if present and if maximumChroma > chroma1
) in the same way as in the sequential palette.
In each arms the Luminance value changes from luminance1
to luminance2
as in the sequential palette.
Short name: SBPaletteDivergingHCL
Public Functions Documentation#
function SBDPaletteDivergingHCL [1/3]#
Default constructor.
function SBDPaletteDivergingHCL [2/3]#
SBDPaletteDivergingHCL::SBDPaletteDivergingHCL (
int hue1,
int hue2,
int chroma1=50,
int maximumChroma=50,
int luminance1=70,
int luminance2=70,
float chromaPower=1.0f,
float luminancePower=1.0f,
float neutralPoint=0.5f,
std::string name=std::string(""),
bool reverse=false
)
function SBDPaletteDivergingHCL [3/3]#
Copy constructor.
function clone#
Clones the color palette.
Implements SBDPaletteDiverging::clone
function getColor#
Computes sRGB color color
based on this palette for the given intensity valuevalue
which should be in the range [0.0, 1.0].
Implements SBDPaletteDiverging::getColor
function getColorInPaletteColorSpace#
Computes color coordinates color
in this palette's color space for the given intensity valuevalue
which should be in the range [0.0, 1.0].
virtual void SBDPaletteDivergingHCL::getColorInPaletteColorSpace (
float * color,
float value
) override const
SBDPaletteDivergingHCL::getColorInPaletteColorSpace - Computes color coordinates color
in the HCL color space for the given intensity value value
.
Parameters:
color
- an array for color coordinates (with the size greater than or equal to 3) in the HCL color space.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.
Implements SBDPaletteDiverging::getColorInPaletteColorSpace
function isSerializable#
Returns true.
Implements SBDPaletteDiverging::isSerializable
function serialize#
Serializes the document.
virtual void SBDPaletteDivergingHCL::serialize (
SBCSerializer * serializer,
const SBVersionNumber & sdkVersionNumber=SB_SDK_VERSION_NUMBER,
const SBVersionNumber & classVersionNumber=SBVersionNumber (1, 0, 0)
) override const
Implements SBDPaletteDiverging::serialize
function toPythonCode#
Returns the string representation of the object that can be used to reconstruct it in Python.
Implements SBDPaletteDiverging::toPythonCode
function unserialize#
Unserializes the document.
virtual void SBDPaletteDivergingHCL::unserialize (
SBCSerializer * serializer,
const SBVersionNumber & sdkVersionNumber=SB_SDK_VERSION_NUMBER,
const SBVersionNumber & classVersionNumber=SBVersionNumber (1, 0, 0)
) override
Implements SBDPaletteDiverging::unserialize