OGRE  1.7
Object-Oriented Graphics Rendering Engine
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Ogre::ColourValue Class Reference

Class representing colour. More...

#include <OgreColourValue.h>

+ Collaboration diagram for Ogre::ColourValue:

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 (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 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 (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...
 

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)
 
_OgreExport friend 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.

Definition at line 57 of file OgreColourValue.h.

Constructor & Destructor Documentation

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

Definition at line 67 of file OgreColourValue.h.

Member Function Documentation

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

Retrieves colours as ABGR.

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

Retrieves colour as ARGB.

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

Retrieves colour as BGRA.

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

Retrieves colour as RGBA.

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]
bool Ogre::ColourValue::operator!= ( const ColourValue rhs) const
ColourValue Ogre::ColourValue::operator* ( const float  fScalar) const
inline

Definition at line 196 of file OgreColourValue.h.

References a, b, g, and r.

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

Definition at line 208 of file OgreColourValue.h.

References a, b, g, and r.

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

Definition at line 280 of file OgreColourValue.h.

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

Definition at line 172 of file OgreColourValue.h.

References a, b, g, and r.

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

Definition at line 260 of file OgreColourValue.h.

References a, b, g, and r.

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

Definition at line 184 of file OgreColourValue.h.

References a, b, g, and r.

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

Definition at line 270 of file OgreColourValue.h.

References a, b, g, and r.

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

Definition at line 220 of file OgreColourValue.h.

References a, b, g, and r.

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

Definition at line 232 of file OgreColourValue.h.

References a, b, g, and r.

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

Definition at line 289 of file OgreColourValue.h.

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

Array accessor operator.

Definition at line 144 of file OgreColourValue.h.

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

Array accessor operator.

Definition at line 152 of file OgreColourValue.h.

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

Pointer accessor for direct copying.

Definition at line 160 of file OgreColourValue.h.

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

Pointer accessor for direct copying.

Definition at line 165 of file OgreColourValue.h.

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

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

Definition at line 111 of file OgreColourValue.h.

Referenced by 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.

Definition at line 136 of file OgreColourValue.h.

References saturate().

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

Sets colour as ABGR.

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

Sets colour as ARGB.

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

Sets colour as BGRA.

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

Sets colour as RGBA.

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]

Friends And Related Function Documentation

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

Definition at line 247 of file OgreColourValue.h.

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

Function for writing to a stream.

Definition at line 322 of file OgreColourValue.h.

Member Data Documentation

float Ogre::ColourValue::a
float Ogre::ColourValue::b
const ColourValue Ogre::ColourValue::Black
static

Definition at line 61 of file OgreColourValue.h.

const ColourValue Ogre::ColourValue::Blue
static

Definition at line 65 of file OgreColourValue.h.

float Ogre::ColourValue::g
const ColourValue Ogre::ColourValue::Green
static

Definition at line 64 of file OgreColourValue.h.

float Ogre::ColourValue::r
const ColourValue Ogre::ColourValue::Red
static

Definition at line 63 of file OgreColourValue.h.

const ColourValue Ogre::ColourValue::White
static

Definition at line 62 of file OgreColourValue.h.

const ColourValue Ogre::ColourValue::ZERO
static

Definition at line 60 of file OgreColourValue.h.


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