AvogadroLibs 1.97.0
Public Member Functions | Protected Attributes | List of all members
Color3f Class Reference

Representation of an RGB color using three floats. More...

#include <avogadro/core/color3f.h>

Public Member Functions

 Color3f (float red=0.0, float green=0.0, float blue=0.0)
 
 Color3f (int red, int green, int blue)
 
void set (float red, float green, float blue)
 
float red () const
 
float green () const
 
float blue () const
 
float * data ()
 
const float * data () const
 

Protected Attributes

float m_data [3]
 

Detailed Description

Author
Marcus D. Hanwell

This class represents a color as three floats ranging from 0.0 to 1.0 specifying the intensity of the red, green and blue components of the color. It is stored in memory as float[3], and so vectors containing this type may be passed directly to OpenGL and other functions as C arrays.

Several convenience functions are provided, the class is written with an emphasis on efficiency and memory layout.

Constructor & Destructor Documentation

◆ Color3f() [1/2]

Color3f ( float  red = 0.0,
float  green = 0.0,
float  blue = 0.0 
)

Constructor, results in a black Color3f object unless the RGB values are set.

Parameters
redIntensity (from 0.0 to 1.0) of the red component of the color.
greenIntensity (from 0.0 to 1.0) of the green component of the color.
blueIntensity (from 0.0 to 1.0) of the blue component of the color.

◆ Color3f() [2/2]

Color3f ( int  red,
int  green,
int  blue 
)

Constructor where the color is constructed from integer values.

Parameters
redIntensity (from 0 to 255) of the red component of the color.
greenIntensity (from 0 to 255) of the green component of the color.
blueIntensity (from 0 to 255) of the blue component of the color.

Member Function Documentation

◆ set()

void set ( float  red,
float  green,
float  blue 
)

Sets the color objects components.

Parameters
redIntensity (from 0.0 to 1.0) of the red component of the color.
greenIntensity (from 0.0 to 1.0) of the green component of the color.
blueIntensity (from 0.0 to 1.0) of the blue component of the color.

◆ red()

float red ( ) const
Returns
The intensity of the red component of the color (0.0 to 1.0).

◆ green()

float green ( ) const
Returns
The intensity of the green component of the color (0.0 to 1.0).

◆ blue()

float blue ( ) const
Returns
The intensity of the blue component of the color (0.0 to 1.0).

◆ data() [1/2]

float * data ( )
Returns
Direct access to the underlying float array of size 3.

◆ data() [2/2]

const float * data ( ) const

This function is useful when calling OpenGL functions which expect a float * array of size 3.

Returns
Direct access to the underlying float array of size 3.

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