Bitmap data class. More...
#include <ilviews/bitmaps/data.h>
Public Member Functions | |
IlvIndexedBitmapData (IlUInt width, IlUInt height, IlvColorMap *cmap=0) | |
Constructor. More... | |
virtual void | computeMask () |
Computes the mask for the instance. More... | |
IlvColorMap * | getColorMap () const |
Returns the colormap for this instance. More... | |
virtual void | getRGBPixel (IlUInt x, IlUInt y, IlUChar &r, IlUChar &g, IlUChar &b) const |
Returns a true color representation of a pixel located in the image at the x and y coordinates. More... | |
virtual IlUChar * | getRGBPixels (const IlvRect &rect, IlUInt &size, IlUChar *data=0) const |
Returns a true color representation of a region of the image stored in the instance. More... | |
IlInt | getTransparentIndex () const |
Returns the index of the transparent color in the colormap. More... | |
virtual IlUInt | getUsedColorNum () |
Returns the number of referenced colors in the bitmap data. More... | |
void | setColorMap (IlvColorMap *colormap) |
Sets the colormap for this instance. More... | |
virtual void | setPixel (IlUInt x, IlUInt y, IlUChar pixel) |
Sets the internal representation of a pixel to the given value. More... | |
virtual void | setPixels (IlUChar *data, IlUInt byteWidth, const IlvRect &rect, const IlvPoint &to) |
Sets the internal representation data to the given data. More... | |
virtual void | setRGBPixel (IlUInt x, IlUInt y, IlUChar r, IlUChar g, IlUChar b) |
Sets a pixel of the image stored in the instance to the given true color representation. More... | |
virtual void | setRGBPixels (IlUChar *data, IlUInt byteWidth, const IlvRect &rect, const IlvPoint &to) |
Sets a region of the image stored in the instance to the given true color representation. More... | |
void | setTransparentIndex (IlInt index) |
Sets the transparent color index. More... | |
void | stretch (const IlvIndexedBitmapData *srcdata, const IlvRect &srcrect, const IlvRect &dstrect) |
Stretches an image. More... | |
Public Member Functions inherited from IlvBitmapData | |
IlvBitmapData (IlUInt width, IlUInt height, IlUShort depth, IlUInt padding=32) | |
Constructor. More... | |
virtual | ~IlvBitmapData () |
Destructor. More... | |
virtual void | blend (const IlvBitmapData *src, const IlvRect &srcrect, const IlvPoint &to, IlUChar blend) |
Blends a rectangle from another bitmap data to the given position. More... | |
virtual void | blendPixel (IlUInt xdst, IlUInt ydst, const IlvBitmapData *src, IlUInt xsrc, IlUInt ysrc, IlUChar blend) |
Blends a pixel from another bitmap data to the given position. More... | |
virtual void | copy (const IlvBitmapData *src, const IlvRect &srcrect, const IlvPoint &to) |
Copies a rectangle from another bitmap data to the given position. More... | |
virtual void | copyPixel (IlUInt xdst, IlUInt ydst, const IlvBitmapData *src, IlUInt xsrc, IlUInt ysrc) |
Copies a pixel from another bitmap data. More... | |
virtual void | fill (const IlvRect &rect, IlUChar r, IlUChar g, IlUChar b, IlUChar a=255) |
Fills a rectangular area of the bitmap data with the specified color. More... | |
IlUInt | getByteWidth () const |
Returns the size in bytes of a row of the image stored in the instance. More... | |
IlUInt | getCount () const |
Returns the reference count for this instance. | |
IlUChar * | getData () const |
Returns a pointer to the internal storage memory of the instance. More... | |
IlUShort | getDepth () const |
Returns the number of bits needed to describe a pixel of the image stored in the instance. More... | |
IlUInt | getHeight () const |
Returns the height in pixels of the image stored in the instance. More... | |
IlvBitmapInformation * | getInformation () const |
Returns the bitmap information. More... | |
virtual IlvBWBitmapData * | getMask () const |
Returns the mask bitmap data of the instance. More... | |
IlUInt | getPadding () const |
Returns the padding used by the instance. More... | |
IlUChar * | getRowStartData (IlUInt idx) const |
Returns a pointer to the storage memory of a given row of the image in the instance. More... | |
IlUInt | getWidth () const |
Returns the width in pixels of the image stored in the instance. More... | |
IlBoolean | hasMask () const |
Returns whether the instance has a mask. More... | |
void | lock () |
Locks the current instance. | |
void | setInformation (IlvBitmapInformation *info) |
Sets the bitmap information. More... | |
virtual void | setMask (IlvBWBitmapData *mask) |
Sets the mask of the current instance. More... | |
void | unLock () |
Unlocks the current instance. | |
Bitmap data class.
Library: xviews or winviews or mviews (mutually exclusive)
The IlvIndexedBitmapData
class lets you manipulate indexed images. Each pixel in an indexed image is stored using an index to a colormap. A colormap is an array of colors. An IlvIndexedBitmapData
can store at most 256 colors.
IlvIndexedBitmapData::IlvIndexedBitmapData | ( | IlUInt | width, |
IlUInt | height, | ||
IlvColorMap * | cmap = 0 |
||
) |
Constructor.
width | The width of the image. |
height | The height of the image. |
cmap | The colormap. |
|
virtual |
Computes the mask for the instance.
This method computes the mask from the transparent color index.
IlvColorMap* IlvIndexedBitmapData::getColorMap | ( | ) | const |
Returns the colormap for this instance.
|
virtual |
Returns a true color representation of a pixel located in the image at the x and y coordinates.
x | The x coordinate of the pixel. |
y | The y coordinate of the pixel. |
r | The red component of the pixel. |
g | The green component of the pixel. |
b | The blue component of the pixel. |
Implements IlvBitmapData.
|
virtual |
Returns a true color representation of a region of the image stored in the instance.
Each pixel uses 4 bytes of storage; the first byte is not used, the second byte represents the red component of the pixel color, the third byte represents the green component of the pixel color, and the fourth byte represents the blue component of the pixel color. The array of memory returned has size bytes. If the data parameter is given, this method does not allocate memory and writes the data to data. The array must be deleted by the application.
rect | The region of the image. |
size | The size of the returned data. |
data | The preallocated data. |
Reimplemented from IlvBitmapData.
IlInt IlvIndexedBitmapData::getTransparentIndex | ( | ) | const |
Returns the index of the transparent color in the colormap.
Returns -1
if there is no transparent color.
|
virtual |
Returns the number of referenced colors in the bitmap data.
Implements IlvBitmapData.
void IlvIndexedBitmapData::setColorMap | ( | IlvColorMap * | colormap | ) |
Sets the colormap for this instance.
The old colormap will be unlocked, new the one will be locked.
colormap | The new colormap. |
Sets the internal representation of a pixel to the given value.
Advanced use only. This method sets directly the internal data.
x | The x position of the pixel. |
y | The y position of the pixel. |
pixel | The index of the pixel. |
|
virtual |
Sets the internal representation data to the given data.
Advanced use only. This method sets directly the internal data.
data | The array of indices. |
byteWidth | The width in bytes of the source data. |
rect | The region of the source data to use. |
to | The position in the destination image. |
|
virtual |
Sets a pixel of the image stored in the instance to the given true color representation.
This method maps the input pixel to the nearest color in the colormap.
x | The x position of the pixel. |
y | The y position of the pixel. |
r | The red component of the pixel. |
g | The green component of the pixel. |
b | The blue component of the pixel. |
Implements IlvBitmapData.
|
virtual |
Sets a region of the image stored in the instance to the given true color representation.
The format of the data is the same as the one returned by getRGBPixels
. This method maps the input pixels to the nearest colors in the colormap. The colors in the colormap must have been allocated.
data | The true color representation of the source pixels. |
byteWidth | The width in bytes of the source. |
rect | The region of the source data. |
to | The position in the destination image. |
Reimplemented from IlvBitmapData.
void IlvIndexedBitmapData::setTransparentIndex | ( | IlInt | index | ) |
Sets the transparent color index.
index | The index of the transparent color in the colormap. |
void IlvIndexedBitmapData::stretch | ( | const IlvIndexedBitmapData * | srcdata, |
const IlvRect & | srcrect, | ||
const IlvRect & | dstrect | ||
) |
Stretches an image.
srcdata | The bitmap data to stretch. |
srcrect | The source rectangle in the source bitmap data. |
dstrect | The destination rectangle in the destination bitmap data. |