mlib_ImageColorRGB2HSL man page on SunOS

Man page or keyword search:  
man Server   20652 pages
apropos Keyword Search (all sections)
Output format
SunOS logo
[printable version]

mlib_ImageColorRGB2HSL(3MLmediaLib Library Functimlib_ImageColorRGB2HSL(3MLIB)

NAME
       mlib_ImageColorRGB2HSL - RGB to HSL color conversion

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

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

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

       It uses the following equations:

	    V = max(R, G, B)
	 Vmin = min(R, G, B)

	   L = (V + Vmin)/2

	   S = (V - Vmin)/(V + Vmin)	     if L ≤ 1/2
	   S = (V - Vmin)/(2 - V - Vmin)     if L > 1/2

	   H = (5.0 + (V - B)/(V - Vmin))/6  if R = V and G = Vmin
	   H = (1.0 - (V - G)/(V - Vmin))/6  if R = V and B = Vmin
	   H = (1.0 + (V - R)/(V - Vmin))/6  if G = V and B = Vmin
	   H = (3.0 - (V - B)/(V - Vmin))/6  if G = V and R = Vmin
	   H = (3.0 + (V - G)/(V - Vmin))/6  if B = V and R = Vmin
	   H = (5.0 - (V - R)/(V - Vmin))/6  if B = V and G = Vmin
	   H = 0.0			     if R = G = B

       where 0 ≤ R, G, B, V, Vmin, L, S ≤ 1 and 0 ≤ H < 1.

       Assuming a pixel in the source image is (r, g, b) and its corresponding
       pixel in the destination image is (h, s, l), then for MLIB_BYTE images,
       the following applies:

	    R = r/255
	   G = g/255
	   B = b/255
	   h = H*256
	   s = S*255
	   l = L*255

       for MLIB_SHORT images, the following applies:

	    R = (r + 32768)/65535
	   G = (g + 32768)/65535
	   B = (b + 32768)/65535
	   h = H*65536 - 32768
	   s = S*65535 - 32768
	   l = L*65535 - 32768

       for MLIB_USHORT images, the following applies:

	    R = r/65535
	   G = g/65535
	   B = b/65535
	   h = H*65536
	   s = S*65535
	   l = L*65535

       and for MLIB_INT images, the following applies:

	    R = (r + 2147483648)/4294967295
	   G = (g + 2147483648)/4294967295
	   B = (b + 2147483648)/4294967295
	   h = H*4294967296 - 2147483648
	   s = S*4294967295 - 2147483648
	   l = L*4294967295 - 2147483648

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_ImageColorHSL2RGB_Fp(3MLIB),
       mlib_ImageColorRGB2HSL_Fp(3MLIB), attributes(5)

SunOS 5.10			  2 Mar 2007	 mlib_ImageColorRGB2HSL(3MLIB)
[top]

List of man pages available for SunOS

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net