戻る


SDL_FillRect

サーフェスを指定した範囲を指定した色で塗りつぶす。

使い方

int SDL_FillRect(SDL_Surface *dst, SDL_Rect *dstrect, Uint32 color);

dstは塗りつぶすサーフェス。

dstrectは塗りつぶす矩形。

colorは塗りつぶす色で、SDL_MapRGB()などで取得する。

返り値は -1: エラー、 0:成功

サンプル

#include <SDL/SDL.h>

int main(){
	/* ビデオサーフェス */
	SDL_Surface* videoSurface = NULL;

	/* 背景色 */
	Uint32 bgColor;

	/* 初期化処理 */
	SDL_Init(SDL_INIT_EVERYTHING);

	/* ウインドウオープン */
	SDL_SetVideoMode(640, 480, 0, SDL_HWSURFACE | SDL_DOUBLEBUF);

	/* ビデオサーフェスの取得 */
	videoSurface = SDL_GetVideoSurface();

	/* 色(青)を取得する */
	bgColor = SDL_MapRGB(videoSurface->format, 0x00, 0x00, 0xFF);

	/* ウインドウを青で塗りつぶす */
	SDL_FillRect(videoSurface, &(videoSurface->clip_rect), bgColor);

	/* フリップ */
	SDL_Flip(videoSurface);

	/* 3秒ウエイト */
	SDL_Delay(3000);
	
	/* 終了処理 */
	SDL_Quit();

	return 0;
}

ウインドウを青で塗りつぶすサンプル。

ビデオサーフェス以外のサーフェスも塗りつぶすことができる。

関連項目