NAME
cmap2rgb, cmap2rgba, rgb2cmap – colors and color maps

SYNOPSIS
#include <u.h>
#include <libc.h>
#include <draw.h>

int    rgb2cmap(int red, int green, int blue)

int    cmap2rgb(int col)

int    cmap2rgba(int col)

DESCRIPTION
These routines convert between `true color' red/green/blue triples and the Plan 9 color map. See color(6) for a description of RGBV, the standard color map.

Rgb2cmap takes a trio of color values, scaled from 0 (no intensity) to 255 (full intensity), and returns the index of the color in RGBV closest to that represented by those values.

Cmap2rgb decomposes the color of RGBV index col and returns a 24–bit integer with the low 8 bits representing the blue value, the next 8 representing green, and the next 8 representing red. Cmap2rgba decomposes the color of RGBV index col and returns a 32–bit integer with the low 8 bits representing an alpha value, defined to be 255, and the next 8 representing blue, then green, then red, as for cmap2rgba shifted up 8 bits. This 32–bit representation is the format used by draw(2) and memdraw(2) library routines that take colors as arguments.

SOURCE
/sys/src/libdraw

SEE ALSO
graphics(2), allocimage(2), draw(2), image(6), color(6)