Loading...
Searching...
No Matches
SBDPaletteQualitativeHCL Class Reference

The SBDPaletteQualitativeHCL class is a class for the qualitative HCL (Hue-Chroma-Luminance) color palette. More...

Constructors and destructors

 SBDPaletteQualitativeHCL ()
 Default constructor.
 
 SBDPaletteQualitativeHCL (int hue1, int hue2, int chroma=50, int luminance=70, std::string name=std::string(""))
 
 SBDPaletteQualitativeHCL (const SBDPaletteQualitativeHCL &otherColorPalette)
 Copy constructor.
 
virtual ~SBDPaletteQualitativeHCL ()
 

Serialization

virtual bool isSerializable () const override
 Returns true.
 
virtual void serialize (SBCSerializer *serializer, const SBVersionNumber &sdkVersionNumber=SB_SDK_VERSION_NUMBER, const SBVersionNumber &classVersionNumber=SBVersionNumber(1, 0, 0)) const override
 Serializes the document.
 
virtual void unserialize (SBCSerializer *serializer, const SBVersionNumber &sdkVersionNumber=SB_SDK_VERSION_NUMBER, const SBVersionNumber &classVersionNumber=SBVersionNumber(1, 0, 0)) override
 Unserializes the document.
 

Cloning

virtual SBDPaletteQualitativeHCLclone () const override
 Clones the color palette.
 

Palette functions

virtual void getColor (float *color, float value) const override
 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 override
 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].
 

Additional Inherited Members

- Public Types inherited from SBDPalette
enum class  PaletteType {
  Custom ,
  Qualitative ,
  Sequential ,
  Diverging ,
  FlexibleDiverging
}
 
- Public Member Functions inherited from SBDPaletteQualitative
 SBDPaletteQualitative ()
 Default constructor.
 
 SBDPaletteQualitative (int hue1, int hue2, int chroma=50, int luminance=70, std::string name=std::string(""))
 
 SBDPaletteQualitative (const SBDPaletteQualitative &otherColorPalette)
 Copy constructor.
 
virtual ~SBDPaletteQualitative ()
 
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.
 
- Public Member Functions inherited from SBDPalette
 SBDPalette ()
 Default constructor.
 
virtual ~SBDPalette ()
 
PaletteType getType () const
 Returns the type of the color palette.
 
void setType (SBDPalette::PaletteType 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.
 
bool getReverseFlag () const
 Returns the reverse flag - whether the color palette is mirrored or not.
 
void setReverseFlag (bool b)
 Sets the reverse flag - whether to mirror or not the color palette.
 
SBColor getColor (float value) const
 Returns SBColor based on the palette and an intensity value value.
 
- Static Public Member Functions inherited from SBDPalette
static float getValueAlongLinearTrajectory (float y1, float y2, float power, float x)
 Returns a value along the "linear" trajectory.
 
static float getValueAlongTriangularTrajectory (float y1, float ymax, float y2, float power, float x)
 Returns a value along "triangular" trajectory.
 
- Protected Attributes inherited from SBDPaletteQualitative
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.
 
- Protected Attributes inherited from SBDPalette
PaletteType paletteType
 The palette's type.
 
std::string * name
 The palette's name.
 
bool reverseFlag
 Reverse flag: if true, then the palette is reversed/mirrored.
 

Detailed Description

A qualitative HCL palette is constructed in a 3D color coordinate space with coordinates named Hue, Chroma, and Luminance, where the coordinate Hue can have an arbitrary value, and coordinates Chroma and Luminance are constant: hue = hue1 + i * (hue2 - hue1), where i is a value (of intensity) based on which the colorization should be done. chroma is const luminance is const

Member Function Documentation

◆ clone()

SBDPaletteQualitativeHCL * SBDPaletteQualitativeHCL::clone ( ) const
overridevirtual

Reimplemented from SBDPaletteQualitative.

◆ getColor()

void SBDPaletteQualitativeHCL::getColor ( float *  color,
float  value 
) const
overridevirtual

Reimplemented from SBDPaletteQualitative.

◆ getColorInPaletteColorSpace()

void SBDPaletteQualitativeHCL::getColorInPaletteColorSpace ( float *  color,
float  value 
) const
overridevirtual

SBDPaletteQualitative::getColorInPaletteColorSpace - Computes color coordinates color in the HCL color space for the given intensity value value.

Parameters
color- an array for color coordinates (float[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.

Reimplemented from SBDPaletteQualitative.

◆ isSerializable()

bool SBDPaletteQualitativeHCL::isSerializable ( ) const
overridevirtual

Reimplemented from SBDPaletteQualitative.

◆ serialize()

void SBDPaletteQualitativeHCL::serialize ( SBCSerializer serializer,
const SBVersionNumber sdkVersionNumber = SB_SDK_VERSION_NUMBER,
const SBVersionNumber classVersionNumber = SBVersionNumber(1, 0, 0) 
) const
overridevirtual

Reimplemented from SBDPaletteQualitative.

◆ unserialize()

void SBDPaletteQualitativeHCL::unserialize ( SBCSerializer serializer,
const SBVersionNumber sdkVersionNumber = SB_SDK_VERSION_NUMBER,
const SBVersionNumber classVersionNumber = SBVersionNumber(1, 0, 0) 
)
overridevirtual

Reimplemented from SBDPaletteQualitative.