Foundation > Graphic Formats > IlvBitmapData: The Portable Bitmap Data Management Class > The IlvRGBBitmapData Class
 
The IlvRGBBitmapData Class
The IlvRGBBitmapData class is dedicated to true color images, where raster data is a direct representation of the colors of the pixels.
Creating a True Color Bitmap Data of Dimensions 256 * 256 Pixels and Filling it With a Gradient
IlvRGBBitmapData* bdata = new IlvRGBBitmapData(256, 256);
for (IlUInt h = 0; h < 256; ++h)
for (IlUInt w = 0; w < 256; ++w)
bdata->fastSetRGBPixel(w, h, w, h, w);
As with IlvIndexedBitmapData, you can then create an IlvBitmap and display it using Rogue Wave Views standard methods.
When on an 8-bit color display, the Rogue Wave® Views library automatically converts this true color image to an indexed image using an algorithm yielding a very high quality image.
The internal representation for true color bitmap data is an array of width * height entries. Each entry is a 4-byte quadruplet describing a pixel as follows:
*First byte is the alpha component.
*Second byte is the red component.
*Third byte is the green component.
*Fourth byte is the blue component.
The array can be described top-bottom or bottom-top, so you have a line access method using getRowStartData.
You can use various methods to access raster data:
*getData returns a pointer to the raw raster data.
*getRGBPixel allows you to retrieve a given pixel.
*getRGBPixels allows you to retrieve the RGB representation of a given rectangle.
*fill allows you to fill a rectangle with a given color.
*copy allows you to copy a rectangle of a bitmap data to a given position in another bitmap data.
*blend allows you to smoothly blend a bitmap data into another using a blend factor.
*alphaCompose uses the alpha channel to compose two bitmap data.
*tile allows you to tile a bitmap data into another.
*stretch allows you to stretch a portion of a bitmap data into another.
*stretchSmooth allows you to stretch a portion of a bitmap data into another using high quality resampling methods.
You can also independently access the color and alpha values for a given pixel.

Version 5.8
Copyright © 2014, Rogue Wave Software, Inc. All Rights Reserved.