man pages section 3: Multimedia Library Functions

Exit Print View

Updated: July 2014
 
 

mlib_ImageColorHSL2RGB_Fp(3MLIB)

Name

mlib_ImageColorHSL2RGB_Fp - HSL to RGB color conversion

Synopsis

cc [ flag... ] file... –lmlib [ library... ]
#include <mlib.h>

mlib_status mlib_ImageColorHSL2RGB_Fp(mlib_image *dst,
     const mlib_image *src);

Description

The mlib_ImageColorHSL2RGB_Fp() function performs a conversion from hue/saturation/lightness to red/green/blue. The source and destination images must be three-channel images.

It uses the following equations:

   L' = L          if L ≤ 1/2
   L' = 1 - L      if L > 1/2

   V = L + S*L'
   P = L - S*L'
   Q = L + S*L'*(1 - 2*fraction(H*6))
   T = L - S*L'*(1 - 2*fraction(H*6))

   R, G, B = V, T, P    if 0   ≤ H < 1/6
   R, G, B = Q, V, P    if 1/6 ≤ H < 2/6
   R, G, B = P, V, T    if 2/6 ≤ H < 3/6
   R, G, B = P, Q, V    if 3/6 ≤ H < 4/6
   R, G, B = T, P, V    if 4/6 ≤ H < 5/6
   R, G, B = V, P, Q    if 5/6 ≤ H < 1

where 0 ≤ H < 1 and 0 ≤ S, L, L', V, P, Q, T, R, G, B ≤ 1.

For MLIB_FLOAT and MLIB_DOUBLE images, the above equations are followed verbatim. Input H component values must be limited to the [0.0, 1.0) range. Input S and L component values must be limited to the [0.0, 1.0] range.

Parameters

The function takes the following arguments:

dst

Pointer to destination image.

src

Pointer to source image.

Return Values

The function returns MLIB_SUCCESS if successful. Otherwise it returns MLIB_FAILURE.

Attributes

See attributes(5) for descriptions of the following attributes:

ATTRIBUTE TYPE
ATTRIBUTE VALUE
Interface Stability
Committed
MT-Level
MT-Safe

See also

mlib_ImageColorHSL2RGB(3MLIB), mlib_ImageColorRGB2HSL(3MLIB), mlib_ImageColorRGB2HSL_Fp(3MLIB), attributes(5)