OGRE  1.12.0
Object-Oriented Graphics Rendering Engine
Ogre::ColourValue Class Reference

Class representing colour. More...

#include <OgreColourValue.h>

Public Member Functions

 ColourValue (float red=1.0f, float green=1.0f, float blue=1.0f, float alpha=1.0f)
 
ABGR getAsABGR (void) const
 Retrieves colours as ABGR. More...
 
ARGB getAsARGB (void) const
 Retrieves colour as ARGB. More...
 
BGRA getAsBGRA (void) const
 Retrieves colour as BGRA. More...
 
RGBA getAsRGBA (void) const
 Retrieves colour as RGBA. More...
 
void getHSB (float &hue, float &saturation, float &brightness) const
 Convert the current colour to Hue, Saturation and Brightness values. More...
 
void getHSB (float *hue, float *saturation, float *brightness) const
 
bool operator!= (const ColourValue &rhs) const
 
ColourValue operator* (const float fScalar) const
 
ColourValue operator* (const ColourValue &rhs) const
 
ColourValueoperator*= (const float fScalar)
 
ColourValue operator+ (const ColourValue &rkVector) const
 
ColourValueoperator+= (const ColourValue &rkVector)
 
ColourValue operator- (const ColourValue &rkVector) const
 
ColourValueoperator-= (const ColourValue &rkVector)
 
ColourValue operator/ (const ColourValue &rhs) const
 
ColourValue operator/ (const float fScalar) const
 
ColourValueoperator/= (const float fScalar)
 
bool operator== (const ColourValue &rhs) const
 
float operator[] (const size_t i) const
 Array accessor operator. More...
 
float & operator[] (const size_t i)
 Array accessor operator. More...
 
float * ptr ()
 Pointer accessor for direct copying. More...
 
const float * ptr () const
 Pointer accessor for direct copying. More...
 
void saturate (void)
 Clamps colour value to the range [0, 1]. More...
 
ColourValue saturateCopy (void) const
 As saturate, except that this colour value is unaffected and the saturated colour value is returned as a copy. More...
 
void setAsABGR (ABGR val)
 Sets colour as ABGR. More...
 
void setAsARGB (ARGB val)
 Sets colour as ARGB. More...
 
void setAsBGRA (BGRA val)
 Sets colour as BGRA. More...
 
void setAsRGBA (RGBA val)
 Sets colour as RGBA. More...
 
void setHSB (float hue, float saturation, float brightness)
 Set a colour value from Hue, Saturation and Brightness. More...
 

Public Attributes

float a
 
float b
 
float g
 
float r
 

Static Public Attributes

static const ColourValue Black
 
static const ColourValue Blue
 
static const ColourValue Green
 
static const ColourValue Red
 
static const ColourValue White
 
static const ColourValue ZERO
 

Friends

ColourValue operator* (const float fScalar, const ColourValue &rkVector)
 
std::ostream & operator<< (std::ostream &o, const ColourValue &c)
 Function for writing to a stream. More...
 

Detailed Description

Class representing colour.

Remarks
Colour is represented as 4 components, each of which is a floating-point value from 0.0 to 1.0.
The 3 'normal' colour components are red, green and blue, a higher number indicating greater amounts of that component in the colour. The forth component is the 'alpha' value, which represents transparency. In this case, 0.0 is completely transparent and 1.0 is fully opaque.

Constructor & Destructor Documentation

◆ ColourValue()

Ogre::ColourValue::ColourValue ( float  red = 1.0f,
float  green = 1.0f,
float  blue = 1.0f,
float  alpha = 1.0f 
)
inlineexplicit

Member Function Documentation

◆ operator==()

bool Ogre::ColourValue::operator== ( const ColourValue rhs) const

◆ operator!=()

bool Ogre::ColourValue::operator!= ( const ColourValue rhs) const

◆ getAsRGBA()

RGBA Ogre::ColourValue::getAsRGBA ( void  ) const

Retrieves colour as RGBA.

◆ getAsARGB()

ARGB Ogre::ColourValue::getAsARGB ( void  ) const

Retrieves colour as ARGB.

◆ getAsBGRA()

BGRA Ogre::ColourValue::getAsBGRA ( void  ) const

Retrieves colour as BGRA.

◆ getAsABGR()

ABGR Ogre::ColourValue::getAsABGR ( void  ) const

Retrieves colours as ABGR.

◆ setAsRGBA()

void Ogre::ColourValue::setAsRGBA ( RGBA  val)

Sets colour as RGBA.

◆ setAsARGB()

void Ogre::ColourValue::setAsARGB ( ARGB  val)

Sets colour as ARGB.

◆ setAsBGRA()

void Ogre::ColourValue::setAsBGRA ( BGRA  val)

Sets colour as BGRA.

◆ setAsABGR()

void Ogre::ColourValue::setAsABGR ( ABGR  val)

Sets colour as ABGR.

◆ saturate()

void Ogre::ColourValue::saturate ( void  )
inline

Clamps colour value to the range [0, 1].

Referenced by saturateCopy().

◆ saturateCopy()

ColourValue Ogre::ColourValue::saturateCopy ( void  ) const
inline

As saturate, except that this colour value is unaffected and the saturated colour value is returned as a copy.

References saturate().

◆ operator[]() [1/2]

float Ogre::ColourValue::operator[] ( const size_t  i) const
inline

Array accessor operator.

◆ operator[]() [2/2]

float& Ogre::ColourValue::operator[] ( const size_t  i)
inline

Array accessor operator.

◆ ptr() [1/2]

float* Ogre::ColourValue::ptr ( )
inline

Pointer accessor for direct copying.

◆ ptr() [2/2]

const float* Ogre::ColourValue::ptr ( ) const
inline

Pointer accessor for direct copying.

◆ operator+()

ColourValue Ogre::ColourValue::operator+ ( const ColourValue rkVector) const
inline

References a, b, g, and r.

◆ operator-()

ColourValue Ogre::ColourValue::operator- ( const ColourValue rkVector) const
inline

References a, b, g, and r.

◆ operator*() [1/2]

ColourValue Ogre::ColourValue::operator* ( const float  fScalar) const
inline

References a, b, g, and r.

◆ operator*() [2/2]

ColourValue Ogre::ColourValue::operator* ( const ColourValue rhs) const
inline

References a, b, g, and r.

◆ operator/() [1/2]

ColourValue Ogre::ColourValue::operator/ ( const ColourValue rhs) const
inline

References a, b, g, and r.

◆ operator/() [2/2]

ColourValue Ogre::ColourValue::operator/ ( const float  fScalar) const
inline

References a, b, g, and r.

◆ operator+=()

ColourValue& Ogre::ColourValue::operator+= ( const ColourValue rkVector)
inline

References a, b, g, and r.

◆ operator-=()

ColourValue& Ogre::ColourValue::operator-= ( const ColourValue rkVector)
inline

References a, b, g, and r.

◆ operator*=()

ColourValue& Ogre::ColourValue::operator*= ( const float  fScalar)
inline

◆ operator/=()

ColourValue& Ogre::ColourValue::operator/= ( const float  fScalar)
inline

◆ setHSB()

void Ogre::ColourValue::setHSB ( float  hue,
float  saturation,
float  brightness 
)

Set a colour value from Hue, Saturation and Brightness.

Parameters
hueHue value, scaled to the [0,1] range as opposed to the 0-360
saturationSaturation level, [0,1]
brightnessBrightness level, [0,1]

◆ getHSB() [1/2]

void Ogre::ColourValue::getHSB ( float &  hue,
float &  saturation,
float &  brightness 
) const

Convert the current colour to Hue, Saturation and Brightness values.

Parameters
hueOutput hue value, scaled to the [0,1] range as opposed to the 0-360
saturationOutput saturation level, [0,1]
brightnessOutput brightness level, [0,1]

◆ getHSB() [2/2]

void Ogre::ColourValue::getHSB ( float *  hue,
float *  saturation,
float *  brightness 
) const
inline

Friends And Related Function Documentation

◆ operator*

ColourValue operator* ( const float  fScalar,
const ColourValue rkVector 
)
friend

◆ operator<<

std::ostream& operator<< ( std::ostream &  o,
const ColourValue c 
)
friend

Function for writing to a stream.

Member Data Documentation

◆ ZERO

const ColourValue Ogre::ColourValue::ZERO
static

◆ Black

◆ White

◆ Red

const ColourValue Ogre::ColourValue::Red
static

◆ Green

const ColourValue Ogre::ColourValue::Green
static

◆ Blue

const ColourValue Ogre::ColourValue::Blue
static

◆ r

float Ogre::ColourValue::r

◆ g

float Ogre::ColourValue::g

◆ b

float Ogre::ColourValue::b

◆ a

float Ogre::ColourValue::a

The documentation for this class was generated from the following file: