OGRE-Next  4.0.0unstable
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)
 
 ColourValue (Vector3 v)
 
 ColourValue (Vector4 v)
 
void fromVector3 (Vector3 v)
 Sets 'this' RGB from xyz. Alpha component is left intact. More...
 
void fromVector4 (Vector4 v)
 Sets 'this' RGBA from xyzw. More...
 
ABGR getAsABGR () const
 Retrieves colours as ABGR. More...
 
ARGB getAsARGB () const
 Retrieves colour as ARGB. More...
 
BGRA getAsBGRA () const
 Retrieves colour as BGRA. More...
 
RGBA getAsRGBA () const
 Retrieves colour as RGBA. More...
 
void getHSB (Real *hue, Real *saturation, Real *brightness) const
 Convert the current colour to Hue, Saturation and Brightness values. More...
 
bool operator!= (const ColourValue &rhs) const
 
ColourValue operator* (const ColourValue &rhs) const
 
ColourValue operator* (const float fScalar) 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)
 Array accessor operator. More...
 
float operator[] (const size_t i) const
 Array accessor operator. More...
 
float * ptr ()
 Pointer accessor for direct copying. More...
 
const float * ptr () const
 Pointer accessor for direct copying. More...
 
void saturate ()
 Clamps colour value to the range [0, 1]. More...
 
ColourValue saturateCopy () const
 As saturate, except that this colour value is unaffected and the saturated colour value is returned as a copy. More...
 
void setAsABGR (const ABGR val)
 Sets colour as ABGR. More...
 
void setAsARGB (const ARGB val)
 Sets colour as ARGB. More...
 
void setAsBGRA (const BGRA val)
 Sets colour as BGRA. More...
 
void setAsRGBA (const RGBA val)
 Sets colour as RGBA. More...
 
void setHSB (Real hue, Real saturation, Real brightness)
 Set a colour value from Hue, Saturation and Brightness. More...
 
Vector3 toVector3 () const
 Returns the RGB in xyz as a Vector3. More...
 
Vector4 toVector4 () const
 Returns the RGBA in xyzw component as a Vector4. 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
 

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() [1/3]

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

◆ ColourValue() [2/3]

Ogre::ColourValue::ColourValue ( Vector3  v)
inlineexplicit

◆ ColourValue() [3/3]

Ogre::ColourValue::ColourValue ( Vector4  v)
inlineexplicit

Member Function Documentation

◆ fromVector3()

void Ogre::ColourValue::fromVector3 ( Vector3  v)
inline

Sets 'this' RGB from xyz. Alpha component is left intact.

References Ogre::Vector3::x, Ogre::Vector3::y, and Ogre::Vector3::z.

◆ fromVector4()

void Ogre::ColourValue::fromVector4 ( Vector4  v)
inline

Sets 'this' RGBA from xyzw.

References Ogre::Vector4::w, Ogre::Vector4::x, Ogre::Vector4::y, and Ogre::Vector4::z.

◆ getAsABGR()

ABGR Ogre::ColourValue::getAsABGR ( ) const

Retrieves colours as ABGR.

◆ getAsARGB()

ARGB Ogre::ColourValue::getAsARGB ( ) const

Retrieves colour as ARGB.

◆ getAsBGRA()

BGRA Ogre::ColourValue::getAsBGRA ( ) const

Retrieves colour as BGRA.

◆ getAsRGBA()

RGBA Ogre::ColourValue::getAsRGBA ( ) const

Retrieves colour as RGBA.

◆ getHSB()

void Ogre::ColourValue::getHSB ( Real hue,
Real saturation,
Real 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]

◆ operator!=()

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

◆ 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 float  fScalar)
inline

◆ operator+()

ColourValue Ogre::ColourValue::operator+ ( const ColourValue rkVector) 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) const
inline

References a, b, g, and r.

◆ operator-=()

ColourValue& Ogre::ColourValue::operator-= ( const ColourValue rkVector)
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 float  fScalar)
inline

◆ operator==()

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

◆ operator[]() [1/2]

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

Array accessor operator.

◆ operator[]() [2/2]

float Ogre::ColourValue::operator[] ( const size_t  i) const
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.

◆ saturate()

void Ogre::ColourValue::saturate ( )
inline

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

Referenced by saturateCopy().

◆ saturateCopy()

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

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

References saturate().

◆ setAsABGR()

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

Sets colour as ABGR.

◆ setAsARGB()

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

Sets colour as ARGB.

◆ setAsBGRA()

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

Sets colour as BGRA.

◆ setAsRGBA()

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

Sets colour as RGBA.

◆ setHSB()

void Ogre::ColourValue::setHSB ( Real  hue,
Real  saturation,
Real  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]

◆ toVector3()

Vector3 Ogre::ColourValue::toVector3 ( ) const
inline

Returns the RGB in xyz as a Vector3.

◆ toVector4()

Vector4 Ogre::ColourValue::toVector4 ( ) const
inline

Returns the RGBA in xyzw component as a Vector4.

Member Data Documentation

◆ a

float Ogre::ColourValue::a

◆ b

float Ogre::ColourValue::b

◆ Black

const ColourValue Ogre::ColourValue::Black
static

◆ Blue

const ColourValue Ogre::ColourValue::Blue
static

◆ g

float Ogre::ColourValue::g

◆ Green

const ColourValue Ogre::ColourValue::Green
static

◆ r

float Ogre::ColourValue::r

◆ Red

const ColourValue Ogre::ColourValue::Red
static

◆ White

const ColourValue Ogre::ColourValue::White
static

◆ ZERO

const ColourValue Ogre::ColourValue::ZERO
static

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