ホーム > デベロッパ > BREW FAQ

BREW FAQ : 描画

図形を描画するには ?

図形を描画するには、IGraphics インターフェイスの関数を使用します。

SophiaFramework では、SFBGraphicsSFXGraphics の各関数を使用します。

図形の描画をするため、以下の関数を記載します。

関数名 [BREW] 関数名 [SophiaFramework] 処理概要
IGRAPHICS_DrawLine SFBGraphics::DrawLine
SFXGraphics::DrawLine
線を描画します。
IGRAPHICS_DrawPolyline SFBGraphics::DrawPolyline
SFXGraphics::DrawPolyline
連結された線を描画します。
IGRAPHICS_DrawTriangle SFBGraphics::DrawTriangle
SFXGraphics::DrawTriangle
三角形を描画します。
IGRAPHICS_DrawRect SFBGraphics::DrawRect
SFXGraphics::DrawRectangle
四角形を描画します。
IGRAPHICS_DrawRoundRectangle SFBGraphics::DrawRoundRectangle
SFXGraphics::DrawRoundRectangle
角の丸い四角形を描画します。
IGRAPHICS_DrawPolygon SFBGraphics::DrawPolygon
SFXGraphics::DrawPolygon
多角形を描画します。
IGRAPHICS_DrawCircle SFBGraphics::DrawCircle
SFXGraphics::DrawCircle
円を描画します。
IGRAPHICS_DrawEllipse SFBGraphics::DrawEllipse
SFXGraphics::DrawEllipse
楕円を描画します。
IGRAPHICS_DrawPie SFBGraphics::DrawPie
SFXGraphics::DrawPie
扇形を描画します。

角の丸い四角形を描画するサンプル コードを、以下に示します。

[ BREW API のみを使用したコード ]

//
// 角の丸い四角形を描画します。
//

IGraphics*      graphics = app->g;
AEERect         rect     = {0};

// 画面を緑色でクリアします。
IGRAPHICS_SetBackground(graphics, 0xCC, 0xFF, 0xCC);
IGRAPHICS_ClearViewport(graphics);

// 塗り潰しモードを設定します。
IGRAPHICS_SetFillMode(graphics, TRUE);

// 描画色を赤色に設定します。
IGRAPHICS_SetColor(graphics, 0xFF, 0x88, 0x88, 0x00);
IGRAPHICS_SetFillColor(graphics, 0xFF, 0xCC, 0xCC, 0x00);

// 角の丸い四角形を描画します。
rect.x  = 10;
rect.y  = 10;
rect.dx = 60;
rect.dy = 50;
IGRAPHICS_DrawRoundRectangle(graphics, &rect, 15, 15);

// 画面を更新します。
IGRAPHICS_Update(graphics);

[ SophiaFramework を使用したコード ]

//
// 角の丸い四角形を描画します。
//

SFBGraphicsSmp  graphics;
SFXRectangle    rect;

// SFBGraphics インスタンスを作成します。
graphics = SFBGraphics::NewInstance();

// 画面を緑色でクリアします。
graphics->SetBackground(SFXRGBColor(0xCC, 0xFF, 0xCC, 0x00));
graphics->ClearViewport();

// 塗り潰しモードを設定します。
graphics->SetFillMode(true);

// 描画色を赤色に設定します。
graphics->SetColor(SFXRGBColor(0xFF, 0x88, 0x88, 0x00));
graphics->SetFillColor(SFXRGBColor(0xFF, 0xCC, 0xCC, 0x00));

// 角の丸い四角形を描画します。
rect.Set(10,10,60,50);
graphics->DrawRoundRectangle(&rect, 15, 15);

// 画面を更新します。
graphics->Update();