Symbian
Symbian OS Library

SYMBIAN OS V9.3

[Index] [Spacer] [Previous] [Next]



Location: GraphicsAccelerator.h

Class TGopAlphaBlendOneBitmap

class TGopAlphaBlendOneBitmap : public TGraphicsOperation;

Description

An accelerated graphics operation that copies a rectangular region of a bitmap blended with the screen image to the screen, using alpha blending values provided in an alpha bitmap to blend the corresponding entries in the bitmap and on the screen.

The way alpha blending works is as follows: if the alpha value is the maximum, the pixel from the source bitmap is opaque, in other words, the full colour of the pixel is written to the destination. If the alpha value is zero, the pixel from the source bitmap is fully transparent, in other words, the full colour of the pixel on the screen is used. Values in-between cause blending with the following formula:

Destination = Source*Alpha/max_Alpha + Screen*(max_Alpha-Alpha)/max_Alpha

Colour alpha bitmaps specify red, green and blue alpha values for each pixel, greyscale bitmaps specify a single alpha value for each pixel. The maximum alpha value depends on the bitmap's display mode. For example, 255 is the maximum for an EGray256 or EColor16M bitmap. The maximum is less for bitmaps which use fewer bits per colour component.

Supported bitmap formats than can be used as alpha bitmaps are given in TGraphicsAcceleratorCaps::iAlphaBitmap.

Objects of this class can be passed to a graphics accelerator's Operation() function either individually, or in a buffer.

Derivation

Members

Defined in TGopAlphaBlendOneBitmap:
TGopAlphaBlendOneBitmap(), iAlphaBmp, iAlphaPt, iDestination, iSourceBmp, iSourceRect

Inherited from TGraphicsOperation:
Append(), EAlphaBlendOneBitmap, EAlphaBlendTwoBitmaps, EBitBlt, EBitBltAlphaBitmap, EBitBltAlphaChannel, EBitBltMasked, EBitBltTransparent, EFadeRect, EFilledPolygon, EFilledPolygonWithPattern, EFilledRect, EFilledRectUsingDrawMode, EFilledRectWithPattern, EInvertRect, EScaledBitBlt, EScaledBitBltAlphaBitmap, EScaledBitBltAlphaChannel, EScaledBitBltMasked, EScaledBitBltTransparent, Function(), Next(), Size(), TGopFunction, iFunction, iSize

See also:


Construction and destruction


TGopAlphaBlendOneBitmap()

inline TGopAlphaBlendOneBitmap(const TPoint &aDestination, TAcceleratedBitmapSpec aSourceBmp, TRect &aSourceRect, TAcceleratedBitmapSpec aAlphaBmp, const TPoint &aAlphaPt);

Description

Constructor with a position, two bitmap specs and a rectangle.

Parameters

const TPoint &aDestination

The destination for the top left hand corner of the portion of the source bitmap.

TAcceleratedBitmapSpec aSourceBmp

A handle to the source bitmap, and other information needed to draw it.

TRect &aSourceRect

A rectangle within the source bitmap. Its coordinates are relative to the top left of the source bitmap. Defines the part of the source bitmap to be copied.

TAcceleratedBitmapSpec aAlphaBmp

const TPoint &aAlphaPt

The point in the alpha bitmap from which we take pixels to blend

[Top]


Member data


iDestination

TPoint iDestination;

Description

The destination for the top left hand corner of the portion of the source bitmap.


iSourceBmp

TAcceleratedBitmapSpec iSourceBmp;

Description

A handle to the source bitmap, and other information needed to access it.


iSourceRect

TRect iSourceRect;

Description

A rectangle defining the part of the bitmap to be copied.


iAlphaBmp

TAcceleratedBitmapSpec iAlphaBmp;

Description

A handle to the alpha bitmap, the bitmap that contains alpha blending values.


iAlphaPt

TPoint iAlphaPt;

Description

Position of the first pixel in the alpha bitmap to be used for alpha blending.