図形を描画するには?
図形を描画するには、IGraphics インターフェイスの関数を使用します。
SophiaFramework では、SFBGraphics や SFXGraphics の各関数を使用します。
図形の描画をするため、以下の関数を記載します。
図形を描画するには、IGraphics インターフェイスの関数を使用します。
SophiaFramework では、SFBGraphics や SFXGraphics の各関数を使用します。
図形の描画をするため、以下の関数を記載します。
クリッピングとは、描画を行う際に、 特定の範囲からはみだした部分を表示しないようにする処理のことです。
例えば、ウィンドウの表示領域を超えて図形が描画された場合でも、 図形がウィンドウからはみだすことはなく、ウィンドウの境界で切り取られます。
これは、ウィンドウの表示領域の範囲でクリッピングされているためです。
IGraphics インターフェイスの IGRAPHICS_SetClip 関数や、IDisplay インターフェイスの IDISPLAY_SetClipRect 関数を使用してクリッピングの範囲を設定できます。
SophiaFramework では、 SFXGraphics::SetClip 関数やSFBGraphics::SetClip 関数や SFBDisplay::SetClipRect 関数を使用します。
残念ながらできません。
JPEG や PNG の拡大、縮小はサポートされていません。
ビットマップの拡大、縮小はサポートされています。
そこで、JPEG や PNG を拡大して描画する場合はビットマップに画像を描画し、ITRANSFORM_TransformBltComplex() や ITRANSFORM_TransformBltSimple() を使用します。
SophiaFramework では、 SFBTransform::TransformBltSimple 関数や SFBTransform::TransformBltComplex 関数を使用して、ビットマップに描画後の PNG イメージを拡大します。
以下のサンプルコードでは、 PNG イメージをリソースファイルから読み込み、 2 倍に拡大して表示します。
画像の読み込み速度や描画速度は機種に依存します。
以下の対比表に BMP、PNG、JPEG の各形式の読み込み時間の比較値を記載します。 この表は BMP を 1 とした場合の値で、値が大きいほど読み込みに時間が掛かります。
機種 | BMP | PNG | JPEG |
---|---|---|---|
A5304T | 1 | 8.5 | 100 |
A5501T | 1 | 4.5 | 5.5 |
※ 読み込み時間は、あくまで目安です。
I3D インターフェイスは、Q3D 形式のファイルを使用します。
Q3D ファイル形式とは、Qualcomm 社独自の 3D モデリングデータを扱うファイル形式のことです。
また、Qualcomm 社は、3D Studio MAX (3D モデリング ソフト) の形式 (.3ds) からQ3D 形式 (.q3d) へのコンバータを提供しており、Qualcomm 社のホームページからダウンロードできます。