Irrlicht 3D Engine
irr::video::SColorf Class Reference

Class representing a color with four floats. More...

#include <SColor.h>

Public Member Functions

 SColorf ()
 Default constructor for SColorf. More...
 
 SColorf (f32 r, f32 g, f32 b, f32 a=1.0f)
 Constructs a color from up to four color values: red, green, blue, and alpha. More...
 
 SColorf (SColor c)
 Constructs a color from 32 bit Color. More...
 
f32 getAlpha () const
 Returns the alpha component of the color in the range 0.0 (transparent) to 1.0 (opaque) More...
 
f32 getBlue () const
 Returns the blue component of the color in the range 0.0 to 1.0. More...
 
f32 getGreen () const
 Returns the green component of the color in the range 0.0 to 1.0. More...
 
SColorf getInterpolated (const SColorf &other, f32 d) const
 Interpolates the color with a f32 value to another color. More...
 
SColorf getInterpolated_quadratic (const SColorf &c1, const SColorf &c2, f32 d) const
 Returns interpolated color. ( quadratic ) More...
 
f32 getRed () const
 Returns the red component of the color in the range 0.0 to 1.0. More...
 
void set (f32 rr, f32 gg, f32 bb)
 Sets three color components to new values at once. More...
 
void set (f32 aa, f32 rr, f32 gg, f32 bb)
 Sets all four color components to new values at once. More...
 
void setColorComponentValue (s32 index, f32 value)
 Sets a color component by index. R=0, G=1, B=2, A=3. More...
 
SColor toSColor () const
 Converts this color to a SColor without floats. More...
 

Public Attributes

f32 a
 alpha color component More...
 
f32 b
 blue component More...
 
f32 g
 green color component More...
 
f32 r
 red color component More...
 

Detailed Description

Class representing a color with four floats.

The color values for red, green, blue and alpha are each stored in a 32 bit floating point variable. So all four values may be between 0.0f and 1.0f. Another, faster way to define colors is using the class SColor, which stores the color values in a single 32 bit integer.

Definition at line 571 of file SColor.h.

Constructor & Destructor Documentation

◆ SColorf() [1/3]

irr::video::SColorf::SColorf ( )
inline

Default constructor for SColorf.

Sets red, green and blue to 0.0f and alpha to 1.0f.

Definition at line 576 of file SColor.h.

Referenced by getInterpolated(), and getInterpolated_quadratic().

◆ SColorf() [2/3]

irr::video::SColorf::SColorf ( f32  r,
f32  g,
f32  b,
f32  a = 1.0f 
)
inline

Constructs a color from up to four color values: red, green, blue, and alpha.

Parameters
rRed color component. Should be a value between 0.0f meaning no red and 1.0f, meaning full red.
gGreen color component. Should be a value between 0.0f meaning no green and 1.0f, meaning full green.
bBlue color component. Should be a value between 0.0f meaning no blue and 1.0f, meaning full blue.
aAlpha color component of the color. The alpha component defines how transparent a color should be. Has to be a value between 0.0f and 1.0f, 1.0f means not transparent (opaque), 0.0f means fully transparent.

Definition at line 589 of file SColor.h.

◆ SColorf() [3/3]

irr::video::SColorf::SColorf ( SColor  c)
inline

Constructs a color from 32 bit Color.

Parameters
c32 bit color from which this SColorf class is constructed from.

Definition at line 594 of file SColor.h.

References a, b, g, irr::video::SColor::getAlpha(), irr::video::SColor::getBlue(), irr::video::SColor::getGreen(), irr::video::SColor::getRed(), and r.

Member Function Documentation

◆ getAlpha()

f32 irr::video::SColorf::getAlpha ( ) const
inline

Returns the alpha component of the color in the range 0.0 (transparent) to 1.0 (opaque)

Definition at line 675 of file SColor.h.

References a.

◆ getBlue()

f32 irr::video::SColorf::getBlue ( ) const
inline

Returns the blue component of the color in the range 0.0 to 1.0.

Definition at line 684 of file SColor.h.

References b.

Referenced by irr::video::SColorHSL::fromRGB().

◆ getGreen()

f32 irr::video::SColorf::getGreen ( ) const
inline

Returns the green component of the color in the range 0.0 to 1.0.

Definition at line 681 of file SColor.h.

References g.

Referenced by irr::video::SColorHSL::fromRGB().

◆ getInterpolated()

SColorf irr::video::SColorf::getInterpolated ( const SColorf other,
f32  d 
) const
inline

Interpolates the color with a f32 value to another color.

Parameters
otherOther color
dvalue between 0.0f and 1.0f
Returns
Interpolated color.

Definition at line 633 of file SColor.h.

References a, b, irr::core::clamp(), g, r, and SColorf().

◆ getInterpolated_quadratic()

SColorf irr::video::SColorf::getInterpolated_quadratic ( const SColorf c1,
const SColorf c2,
f32  d 
) const
inline

Returns interpolated color. ( quadratic )

Parameters
c1first color to interpolate with
c2second color to interpolate with
dvalue between 0.0f and 1.0f.

Definition at line 645 of file SColor.h.

References a, b, irr::core::clamp(), g, r, and SColorf().

◆ getRed()

f32 irr::video::SColorf::getRed ( ) const
inline

Returns the red component of the color in the range 0.0 to 1.0.

Definition at line 678 of file SColor.h.

References r.

Referenced by irr::video::SColorHSL::fromRGB().

◆ set() [1/2]

void irr::video::SColorf::set ( f32  rr,
f32  gg,
f32  bb 
)
inline

Sets three color components to new values at once.

Parameters
rrRed color component. Should be a value between 0.0f meaning no red (=black) and 1.0f, meaning full red.
ggGreen color component. Should be a value between 0.0f meaning no green (=black) and 1.0f, meaning full green.
bbBlue color component. Should be a value between 0.0f meaning no blue (=black) and 1.0f, meaning full blue.

Definition at line 616 of file SColor.h.

References b, g, and r.

Referenced by irr::video::SColorHSL::toRGB().

◆ set() [2/2]

void irr::video::SColorf::set ( f32  aa,
f32  rr,
f32  gg,
f32  bb 
)
inline

Sets all four color components to new values at once.

Parameters
aaAlpha component. Should be a value between 0.0f meaning fully transparent and 1.0f, meaning opaque.
rrRed color component. Should be a value between 0.0f meaning no red and 1.0f, meaning full red.
ggGreen color component. Should be a value between 0.0f meaning no green and 1.0f, meaning full green.
bbBlue color component. Should be a value between 0.0f meaning no blue and 1.0f, meaning full blue.

Definition at line 627 of file SColor.h.

References a, b, g, and r.

◆ setColorComponentValue()

void irr::video::SColorf::setColorComponentValue ( s32  index,
f32  value 
)
inline

Sets a color component by index. R=0, G=1, B=2, A=3.

Definition at line 663 of file SColor.h.

References a, b, g, and r.

◆ toSColor()

SColor irr::video::SColorf::toSColor ( ) const
inline

Converts this color to a SColor without floats.

Definition at line 604 of file SColor.h.

References a, b, g, r, and irr::core::round32().

Member Data Documentation

◆ a

f32 irr::video::SColorf::a

alpha color component

Definition at line 696 of file SColor.h.

Referenced by getAlpha(), getInterpolated(), getInterpolated_quadratic(), SColorf(), set(), setColorComponentValue(), and toSColor().

◆ b

f32 irr::video::SColorf::b

blue component

Definition at line 693 of file SColor.h.

Referenced by getBlue(), getInterpolated(), getInterpolated_quadratic(), SColorf(), set(), setColorComponentValue(), and toSColor().

◆ g

f32 irr::video::SColorf::g

green color component

Definition at line 690 of file SColor.h.

Referenced by getGreen(), getInterpolated(), getInterpolated_quadratic(), SColorf(), set(), setColorComponentValue(), and toSColor().

◆ r

f32 irr::video::SColorf::r

red color component

Definition at line 687 of file SColor.h.

Referenced by getInterpolated(), getInterpolated_quadratic(), getRed(), SColorf(), set(), setColorComponentValue(), and toSColor().


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