ホーム > デベロッパ > BREW プログラミング入門 > さらに描画のおはなし > - 1 / 2 -

さらに描画のおはなし - 1 / 2 -

static void Graphix_ClipRectUseIDisplay(GraphixApplet* app)
{
  IDisplay*  display = app->a.m_pIDisplay;
  AEERect  clip;
  AEERect  rect;
  const AECHAR  str[] = {'B','R','E','W',' ','B','R','E','W',' ',
                         'B','R','E','W','\0'};

  // 画面を緑色でクリア
  IDISPLAY_SetColor(display,CLR_USER_BACKGROUND,MAKE_RGB(0xCC,0xFF,0xCC));
  IDISPLAY_ClearScreen(display);

  // クリッピング領域を四角形に設定
  clip.x = 20;
  clip.y = 20;
  clip.dx = 80;
  clip.dy = 80;
  IDISPLAY_SetClipRect(display,&clip);

  // 描画色を赤色で四角形を描画
  rect.x = 10;
  rect.y = 10;
  rect.dx = 60;
  rect.dy = 50;
  IDISPLAY_DrawRect(display,&rect,MAKE_RGB(0xFF,0x88,0x88),MAKE_RGB(0xFF,0xCC,0xCC),
                    IDF_RECT_FRAME | IDF_RECT_FILL);

  // 文字色を黒色に設定
  IDISPLAY_SetColor(display,CLR_USER_TEXT,MAKE_RGB(0x00,0x00,0x00));

  // 文字列を描画
  IDISPLAY_DrawText(display,AEE_FONT_NORMAL,str,-1,0,55,NULL,IDF_TEXT_TRANSPARENT);
  IDISPLAY_DrawText(display,AEE_FONT_NORMAL,str,-1,20,70,NULL,IDF_TEXT_TRANSPARENT);

  // クリッピング領域をリセット
  IDISPLAY_SetClipRect(display,NULL);

  // 画面更新
  IDISPLAY_Update(display);
  return;
}