BALL  1.4.1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines
Private Member Functions | Private Attributes
BALL::VIEW::ColorHSV Class Reference

#include <BALL/VIEW/DATATYPE/colorHSV.h>

List of all members.

Public Member Functions

Constructors
 ColorHSV ()
 ColorHSV (const ColorHSV &color)
 ColorHSV (const ColorRGBA &color)
 ColorHSV (const char *value)
 ColorHSV (const String &value)
 ColorHSV (const ColorUnitHue &hue, const ColorUnit &saturation, const ColorUnit &value)
Destructors
virtual ~ColorHSV ()
virtual void clear ()
Converters
 operator String () const
Assignment
void set (const ColorHSV &color)
const ColorHSVoperator= (const ColorHSV &color)
void set (const ColorRGBA &color)
const ColorHSVoperator= (const ColorRGBA &color)
void get (ColorRGBA &color) const
void set (const char *value)
const ColorHSVoperator= (const char *value)
void get (char *value) const
void set (const String &value)
const ColorHSVoperator= (const String &value)
void get (String &value) const
void swap (ColorHSV &color)
Accessors: inspectors and mutators
void setHue (const ColorUnitHue &hue)
ColorUnitHuegetHue ()
const ColorUnitHuegetHue () const
void setSaturation (const ColorUnit &saturation)
ColorUnitgetSaturation ()
const ColorUnitgetSaturation () const
void setValue (const ColorUnit &value)
ColorUnitgetValue ()
const ColorUnitgetValue () const
void set (const ColorUnitHue &hue, const ColorUnit &saturation, const ColorUnit &value)
void get (ColorUnitHue &hue, ColorUnit &saturation, ColorUnit &value) const
Predicates
bool operator== (const ColorHSV &color) const
bool operator!= (const ColorHSV &color) const
bool operator< (const ColorHSV &color) const
bool operator<= (const ColorHSV &color) const
bool operator> (const ColorHSV &color) const
bool operator>= (const ColorHSV &color) const
debuggers and diagnostics
virtual void dump (std::ostream &s=std::cout, Size depth=0) const

Private Member Functions

void calculateHSV_ (const ColorUnit red, const ColorUnit green, const ColorUnit blue)
void calculateRGB_ (ColorUnit &red, ColorUnit &green, ColorUnit &blue) const
void stringToHSV_ (const String &value)

Private Attributes

ColorUnitHue hue_
ColorUnit saturation_
ColorUnit value_

Friends

Class friends
class ColorRGBA
Storers
std::istream & operator>> (std::istream &s, ColorHSV &color)
std::ostream & operator<< (std::ostream &s, const ColorHSV &color)

Detailed Description

ColorHSV class. An instance of ColorHSV represents a color consisting of the components hue, saturation and value. The components staturation and values are ColorUnit 's. The component hue is of class type ColorUnitHue . See description of these classes for further informations concerning type conversions.

Definition at line 42 of file colorHSV.h.


Constructor & Destructor Documentation

Default Constructor. Constructs new colorHSV. Initialized with color black (hue=0, saturation=0, value=0).

Returns:
ColorHSV new constructed colorHSV

Copy constructor.

Constructor with ColorRGBA.

BALL::VIEW::ColorHSV::ColorHSV ( const char *  value)

Constructor with parameter char*. Constructs new colorHSV by initialising its value with the given pointer to a string representing a color value in hex format. The length of the string can either be 6 or 7 characters depending whether the hue component is 2 or 3 bytes long. See ColorUnitHue and ColorUnit for information concerning to string format.

Parameters:
valuethe pointer to a string representing a color
Exceptions:
InvalidRangeif string length != 6 && string length != 7
NotInHexFormatif the string is not a valid hex format string
Returns:
ColorHSV new constructed colorHSV
See also:
ColorUnit
ColorUnitHue

Constructor with Parameter string. Constructs new ColorHSV by initialising its value with a string representing a color value in hex format. The length of the string can either be 6 or 7 characters depending whether the hue component is 2 or 3 bytes long. See ColorUnitHue and ColorUnit for information concerning to string format.

Parameters:
valuea string representing a color
Exceptions:
InvalidRangeif string length != 6 && string length != 7
NotInHexFormatif the string is not a valid hex format string
BALL::VIEW::ColorHSV::ColorHSV ( const ColorUnitHue hue,
const ColorUnit saturation,
const ColorUnit value 
)

Detailed component initializing constructor.

Parameters:
huethe hue component. See ColorUnitHue
saturationthe staturation component. See ColorUnit
valuethe value component. See ColorUnit
Returns:
ColorHSV new constructed colorHSV
virtual BALL::VIEW::ColorHSV::~ColorHSV ( ) [virtual]

Destructor.


Member Function Documentation

void BALL::VIEW::ColorHSV::calculateHSV_ ( const ColorUnit  red,
const ColorUnit  green,
const ColorUnit  blue 
) [private]
void BALL::VIEW::ColorHSV::calculateRGB_ ( ColorUnit red,
ColorUnit green,
ColorUnit blue 
) const [private]
virtual void BALL::VIEW::ColorHSV::clear ( ) [virtual]

Explicit default initialization. Sets the color of this colorHSV to the default color (black). The value of this colorHSV is:

  • hue component is zero (0)
  • staturation component is zero (0)
  • value component is zero (0)
virtual void BALL::VIEW::ColorHSV::dump ( std::ostream &  s = std::cout,
Size  depth = 0 
) const [virtual]

Internal value dump. Dumps the current color of this colorHSV to the output ostream s with dumping depth depth.

Parameters:
soutput stream where to output the color of this colorHSV
depththe dumping depth
void BALL::VIEW::ColorHSV::get ( ColorRGBA color) const

Copying to ColorRGBA. Calls set. The color of the colorRGBA color is initialized to the color of this colorHSV.

Parameters:
colorthe colorRGBA to be assigned to
void BALL::VIEW::ColorHSV::get ( char *  value) const

Copying to char*. Calls set. The string value is initialized to the color of this colorHSV. At least 8 bytes must be allocated for the string. The format of the string is the same as the one given to the constructor.

Parameters:
valuethe pointer to string (at least 8 bytes long)
See also:
set
void BALL::VIEW::ColorHSV::get ( String value) const

Copying to string. Calls set. The string value is initialized to the color of this colorHSV. The format of the string is the same as the one given to the constructor.

Parameters:
valuethe string receiving the color in hex format
void BALL::VIEW::ColorHSV::get ( ColorUnitHue hue,
ColorUnit saturation,
ColorUnit value 
) const

Inspection of the colorHSV's components.

Mutable inspection of the hue component. Accesses the mutual reference of the hue component of this colorHSV. See ColorUnitHue for further information concerning type conversion.

Returns:
ColorUnitHue& mutable reference to the hue component of this colorHSV
See also:
setHue
ColorUnitHue

Non-mutable inspection of the hue component. For further information see ColorUnitHue& getHue().

Mutable inspection of the saturation component.

See also:
setSaturation

Non-mutable inspection of the saturation component.

Mutable inspection of the value component.

Non-mutable inspection of the value component. For further information see ColorUnit& getValue().

BALL::VIEW::ColorHSV::operator String ( ) const

Conversion to string.

Returns:
a string with hex format. See constructor for information concerning the string format
bool BALL::VIEW::ColorHSV::operator!= ( const ColorHSV color) const

Unequality test.

bool BALL::VIEW::ColorHSV::operator< ( const ColorHSV color) const

Smaller test. Smaller means that all components of this are smaller than all the components of color colorHSV.

bool BALL::VIEW::ColorHSV::operator<= ( const ColorHSV color) const

Smaller or equal test. Smaller or equal means that all components of this are smaller or equal than all the components of color colorHSV.

const ColorHSV& BALL::VIEW::ColorHSV::operator= ( const ColorHSV color)

Assignment operator. Calls set.

const ColorHSV& BALL::VIEW::ColorHSV::operator= ( const ColorRGBA color)

Assignment operator with ColorRGBA. Assigns the colorRGBA color to this colorHSV. Calls set. The color of this is initialized to the color of the colorRGBA color.

Parameters:
colorthe colorRGBA to be copied
Returns:
ColorHSV& constant reference of this colorHSV
See also:
set
const ColorHSV& BALL::VIEW::ColorHSV::operator= ( const char *  value)

Assignment operator with char*. Calls set. The color of this is initialized to the color represented by the string value. See constructor for format description.

Parameters:
valuethe color represented by a string
Exceptions:
InvalidRangeif string length != 6 && string length != 7
NotInHexFormatif the string is not a valid hex format string
const ColorHSV& BALL::VIEW::ColorHSV::operator= ( const String value)

Assignment operator with string. Assigns the color represented by the string value to this colorHSV. Calls set. See constructor for format description.

Parameters:
valuethe color represented by a string
Exceptions:
InvalidRangeif string length != 6 && string length != 7
NotInHexFormatif the string is not a valid hex format string
bool BALL::VIEW::ColorHSV::operator== ( const ColorHSV color) const

Equality test.

bool BALL::VIEW::ColorHSV::operator> ( const ColorHSV color) const

Greater test. Greater means that all components of this are greater than all the components of color colorHSV.

bool BALL::VIEW::ColorHSV::operator>= ( const ColorHSV color) const

Greater or equal test. Greater or equal means that all components of this are greater or equal than all the components of color colorHSV.

void BALL::VIEW::ColorHSV::set ( const ColorHSV color)

Assignment.

void BALL::VIEW::ColorHSV::set ( const ColorRGBA color)

Assignment with ColorRGBA. The color of this is initialized to the color of the colorRGBA color.

void BALL::VIEW::ColorHSV::set ( const char *  value)

Assignment with char*. The color of this is initialized to the color represented by the string value. See constructor for format description.

Parameters:
valuethe color represented by a string
Exceptions:
InvalidRangeif string length != 6 && string length != 7
NotInHexFormatif the string is not a valid hex format string
void BALL::VIEW::ColorHSV::set ( const String value)

Assignment with string. Assigns the color represented by the string value to this colorHSV. The color of this is initialized to the color represented by the string value. See constructor for format description.

Parameters:
valuethe color represented by a string
Exceptions:
InvalidRangeif string length != 6 && string length != 7
NotInHexFormatif the string is not a valid hex format string
void BALL::VIEW::ColorHSV::set ( const ColorUnitHue hue,
const ColorUnit saturation,
const ColorUnit value 
)

Changes the values of the hue, saturation and value component.

Changes the value of the hue component. Changes the value of of the hue component of this colorHSV to the value represented by the parameter hue. See ColorUnitHue for further information concerning the format.

Parameters:
huethe new hue component of this colorHSV
See also:
getHue
ColorUnitHue
void BALL::VIEW::ColorHSV::setSaturation ( const ColorUnit saturation)

Changes the value of the saturation component.

See also:
getSaturation
void BALL::VIEW::ColorHSV::setValue ( const ColorUnit value)

Changes the value of the value component.

void BALL::VIEW::ColorHSV::stringToHSV_ ( const String value) [private]

Swapping of colorHSVs.


Friends And Related Function Documentation

friend class ColorRGBA [friend]

Definition at line 48 of file colorHSV.h.

std::ostream& operator<< ( std::ostream &  s,
const ColorHSV color 
) [friend]

Friendly stream output. Writes colorHSV data to the output stream s and store the color of this. The color will be stored as an vector in integer format. The output will look like '(0-360, 0-255, 0-255)'. This method is provided for convienience.

Parameters:
soutput stream to where the color of this colorHSV will be stored
colorthe colorHSV from which the color will be stored
std::istream& operator>> ( std::istream &  s,
ColorHSV color 
) [friend]

Friendly stream input. Reads colorHSV data from the input stream s and restore the color of this. The hue, saturation and value component are read as integers from the input stream. The method expects an vector as written as the one by the output stream operator. This method is provided for convienience.

Parameters:
sinput stream from where to restore the color of this colorHSV
colorthe colorHSV to which the color will be restored

Member Data Documentation

Definition at line 386 of file colorHSV.h.

Definition at line 387 of file colorHSV.h.

Definition at line 388 of file colorHSV.h.

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines