SophiaFramework UNIVERSE 5.3 |
BREW 2.0 | BREW 2.1 | BREW 3.1 | BREW 4.0 |
---|---|---|---|
○ | ○ | ○ | ○ |
パブリック関数 | |
---|---|
static SFBTransformSmp |
NewInstance(
SFBBitmapSmpConstRef bitmap
, SFCErrorPtr exception = null
)
SFBTransform インスタンスを生成します。
|
static SFBTransformSmp |
NewInstance(
SFBBitmapSmpConstRef bitmap
, AEECLSID id
, SFCErrorPtr exception = null
)
SFBTransform インスタンスを生成します。
|
SFCError |
TransformBltComplex(
SInt32 xDest
, SInt32 yDest
, SFBBitmapSmpConstRef bmpSrc
, SInt32 xSrc
, SInt32 ySrc
, UInt32 dxSrc
, UInt32 dySrc
, AEETransformMatrix const & transformMatrix
, UInt08 composite = COMPOSITE_OPAQUE
)
AEETransformMatrix 構造体の情報を元にして指定したビットマップを変形し、
転送先のビットマップに描画します。
|
SFCError |
TransformBltComplex(
SFXGridConstRef gridDest
, SFBBitmapSmpConstRef bmpSrc
, SFXRectangleConstRef rectSrc
, AEETransformMatrix const & transformMatrix
, UInt08 composite = COMPOSITE_OPAQUE
)
AEETransformMatrix 構造体の情報を元にして指定したビットマップを変形し、
転送先のビットマップに描画します。
|
SFCError |
TransformBltSimple(
SInt32 xDest
, SInt32 yDest
, SFBBitmapSmpConstRef bmpSrc
, SInt32 xSrc
, SInt32 ySrc
, UInt32 dxSrc
, UInt32 dySrc
, UInt16 transform
, UInt08 composite = COMPOSITE_OPAQUE
)
フラグの値を元にして指定したビットマップを変形し、
転送先のビットマップに描画します。
|
SFCError |
TransformBltSimple(
SFXGridConstRef gridDest
, SFBBitmapSmpConstRef bmpSrc
, SFXRectangleConstRef rectSrc
, UInt16 transform
, UInt08 composite = COMPOSITE_OPAQUE
)
フラグの値を元にして指定したビットマップを変形し、
転送先のビットマップに描画します。
|
SFCError |
QueryInterface(
AEECLSID clsid
, VoidHandle handle
)
(SFBQuery から継承)
このオブジェクトからの別の API を問い合わせます。
|
SFCError |
QueryInterface(
AEECLSID clsid
, SFBBaseSmpPtr handle
)
(SFBQuery から継承)
このオブジェクトからの別の API を問い合わせます。
|
SFBBaseSmp |
QueryInterface(
AEECLSID clsid
)
(SFBQuery から継承)
このオブジェクトからの別の API を問い合わせます。
|
Void |
Self(
AEECLSID clsidReq
, SFBQuerySmpPtr clone
, AEECLSID clsidImp
)
(SFBQuery から継承)
オブジェクトを単一インターフェースで実装するときに使います。
|
SFBQuerySmp |
Self(
AEECLSID clsidReq
, AEECLSID clsidImp
)
(SFBQuery から継承)
オブジェクトを単一インターフェースで実装するときに使います。
|
プロテクト関数 | |
---|---|
static SFBBaseSmp |
FactoryByCreate(
AEECLSID id
, SFCErrorPtr exception = null
)
(SFBBase から継承)
指定したクラス ID のインターフェースのインスタンスを生成します。
|
static SFBBaseSmp |
FactoryByQuery(
SFBQuerySmpConstRef query
, AEECLSID id
, SFCErrorPtr exception = null
)
(SFBBase から継承)
指定したクラス ID のインターフェースのインスタンスを指定した SFBQuery インスタンスを使用して生成します。
|
[ public, static ] SFBTransformSmp NewInstance( SFBBitmapSmpConstRef bitmap // SFBBitmap インスタンス SFCErrorPtr exception = null // エラー値 );
[ public, static ] SFBTransformSmp NewInstance( SFBBitmapSmpConstRef bitmap // SFBBitmap インスタンス AEECLSID id // Class ID SFCErrorPtr exception = null // エラー値 );
引数に指定された SFBBitmap インスタンスから、 SFBTransform インスタンスを取得して返します。
[ public ] SFCError TransformBltComplex( SInt32 xDest // 転送先の矩形の左上の X 座標 SInt32 yDest // 転送先の矩形の左上の Y 座標 SFBBitmapSmpConstRef bmpSrc // 転送元のビットマップ SInt32 xSrc // 転送元の矩形の左上の X 座標 SInt32 ySrc // 転送元の矩形の左上の Y 座標 UInt32 dxSrc // 転送元の矩形の幅 UInt32 dySrc // 転送元の矩形の高さ AEETransformMatrix const & transformMatrix // AEETransformMatrix 構造体を指すポインタ UInt08 composite = COMPOSITE_OPAQUE // プロパティ );
[ public ] SFCError TransformBltComplex( SFXGridConstRef gridDest // 転送先の矩形の左上の座標 SFBBitmapSmpConstRef bmpSrc // 転送元のビットマップ SFXRectangleConstRef rectSrc // 転送元の矩形 AEETransformMatrix const & transformMatrix // AEETransformMatrix 構造体を指すポインタ UInt08 composite = COMPOSITE_OPAQUE // プロパティ );
リソースファイルから読み込んだビットマップを 1.5 倍に拡大して描画します。
// リソースファイルから読み込むビットマップ画像のリソース ID #define IDB_MY_PICTURE 0x0001 SFXGraphicsPtr graphic = SFXGraphics::GetInstance(); SFBShellSmp shell = SFBShell::GetInstance(); SFBBitmapSmp bmp; SFBBitmapSmp dst; SFBBitmapSmp tmp; AEEBitmapInfo bmpInfo = {0}; SFXRectangle bmpRect; SFBTransformSmp trans; SFXGrid point; AEETransformMatrix matrix = {0}; // リソースファイルからビットマップを取得する bmp = shell->LoadResBitmap(MYRESOURCE_RES_FILE, IDB_MY_PICTURE); if (bmp != null) { // ビットマップのサイズを取得する bmp->GetInfo(&bmpInfo); // 転送元ビットマップの矩形領域を設定する bmpRect.Set(0, 0, (UInt16)bmpInfo.cx, (UInt16)bmpInfo.cy); // 作業用のビットマップを作成する // ( 転送先のビットマップと互換性のあるビットマップを作成する ) dst = graphic->GetDestination(); tmp = dst->CreateCompatibleBitmap(SFXSize((UInt16)bmpInfo.cx, (UInt16)bmpInfo.cy)); // 作業用のビットマップに画像を描画する tmp->BltIn(bmpRect, bmp, SFXGrid(0, 0)); // SFBTransform のインスタンスを生成する trans = SFBTransform::NewInstance(dst); // 変形マトリックスを設定する // 1.5 倍に拡大する matrix.A = 384; matrix.B = 0; matrix.C = 0; matrix.D = 384; // 転送元のビットマップを 1.5 倍に拡大して描画する point.Set((UInt16)(bmpInfo.cx / 2), (UInt16)(bmpInfo.cy / 2)); trans->TransformBltComplex( point, // 転送先の座標 tmp, // 転送元のビットマップ bmpRect, // 転送元の矩形領域 matrix // 1.5 倍に拡大 ); }
BREW API ITRANSFORM_TransformBltComplex | BREW API ITransformのプロパティ | AEEMatrixTransform | SFBTransform
[ public ] SFCError TransformBltSimple( SInt32 xDest // 転送先の矩形の左上の X 座標 SInt32 yDest // 転送先の矩形の左上の Y 座標 SFBBitmapSmpConstRef bmpSrc // 転送元のビットマップ SInt32 xSrc // 転送元の矩形の左上の X 座標 SInt32 ySrc // 転送元の矩形の左上の Y 座標 UInt32 dxSrc // 転送元の矩形の幅 UInt32 dySrc // 転送元の矩形の高さ UInt16 transform // フラグ UInt08 composite = COMPOSITE_OPAQUE // プロパティ );
[ public ] SFCError TransformBltSimple( SFXGridConstRef gridDest // 転送先の矩形の左上の座標 SFBBitmapSmpConstRef bmpSrc // 転送元のビットマップ SFXRectangleConstRef rectSrc // 転送元の矩形 UInt16 transform // フラグ UInt08 composite = COMPOSITE_OPAQUE // プロパティ );
リソースファイルから読み込んだビットマップを 2 倍に拡大して描画します。
// リソースファイルから読み込むビットマップ画像のリソース ID #define IDB_MY_PICTURE 0x0001 SFXGraphicsPtr graphic = SFXGraphics::GetInstance(); SFBShellSmp shell = SFBShell::GetInstance(); SFBBitmapSmp bmp; SFBBitmapSmp dst; SFBBitmapSmp tmp; AEEBitmapInfo bmpInfo = {0}; SFXRectangle bmpRect; SFBTransformSmp trans; // リソースファイルからビットマップを取得する bmp = shell->LoadResBitmap(MYRESOURCE_RES_FILE, IDB_MY_PICTURE); if (bmp != null) { // ビットマップのサイズを取得する bmp->GetInfo(&bmpInfo); // 転送元ビットマップの矩形領域を設定する bmpRect.Set(0, 0, (UInt16)bmpInfo.cx, (UInt16)bmpInfo.cy); // 作業用のビットマップを作成する // ( 転送先のビットマップと互換性のあるビットマップを作成する ) dst = graphic->GetDestination(); tmp = dst->CreateCompatibleBitmap(SFXSize((UInt16)bmpInfo.cx, (UInt16)bmpInfo.cy)); // 作業用のビットマップに画像を描画する tmp->BltIn(bmpRect, bmp, SFXGrid(0, 0)); // SFBTransform のインスタンスを生成する trans = SFBTransform::NewInstance(dst); // 転送元のビットマップを 2 倍に拡大して描画する point.Set((UInt16)(bmpInfo.cx / 2), (UInt16)(bmpInfo.cy / 2)); trans->TransformBltSimple( point, // 転送先の座標 tmp, // 転送元のビットマップ bmpRect, // 転送元の矩形領域 TRANSFORM_SCALE_2 // 2 倍に拡大 ); }
Copyright(c) 2002 - 2024 Sophia Cradle Incorporated All Rights Reserved. |