Location:
GDI.H
Link against: gdi.lib
class TColor256Util;
Enables conversion, in both directions, between a TRgb
object and an index into an arbitrary 256 colour palette.
Defined in TColor256Util
:
Color256()
, Color256()
, Color256()
, Construct()
, Default()
, iColorTable
, iInverseColorTable
IMPORT_C void Construct(const CPalette &aPalette);
Initialises the two lookup tables using the specified palette.
|
IMPORT_C TInt Color256(TRgb aRgb) const;
Gets the entry from the inverse colour lookup table for the colour that most closely matches the specified TRgb
value.
Entries in the inverse colour lookup table are indices into the palette that the object was created with. Essentially, this function matches aRgb to the index of the nearest colour in the palette.
|
|
IMPORT_C void Color256(TUint8 *aDestination, const TRgb *aSource, TInt aNumPixels) const;
Gets the entries from the inverse colour lookup table for the colours that most closely match the specified TRgb
values.
|
inline TRgb Color256(TInt aColor256) const;
Gets the TRgb
value of the entry at the specified index in the colour lookup table.
|
|
static IMPORT_C const TColor256Util *Default();
Returns a pointer to the system default 256 colour palette.
|
TUint32 iColorTable;
256 colour lookup table.
Each entry is a 32 bit value which corresponds to a TRgb
value in the palette passed to Construct()
. If there are more than 256 colours in the palette, the first 256 colours are used in this table. If there are fewer than
256 entries, the remaining entries in the table are set to zero.
TUint8 iInverseColorTable;
Inverse colour lookup table.
It has 4096 entries. Each entry is the index of a colour in the palette that the object was created with (see Construct()
) that most closely matches the 4096 degrees of intensity of red, green and blue on a uniform 16x16x16 colour cube.
It is called "inverse" because iColorTable maps indices (0..255) to TRgb
values, but this table maps TRgb
values to palette indices.