5. 色を指定して線・円・四角形を表示する。
色は光の3原色(R,G,B)=(赤、緑、青)の混合で指定します。
光は全ての色を混合させると白になります。輝度は0〜255で指定します。
ですから白の場合は 白=(255,255,255) 反対に何も光がなければ黒になります。黒=(0,0,0)
赤をしていしたければ 赤=(255,0,0)となります。
色を取得する関数はGetColor();という関数を使用します。この関数の引数に3色の値を
指定します。返り値はその色のハンドルがint型で渡されるため、任意の変数に代入してください。
例
int Color_Red;
Color_Red = GetColor( 255 , 0 , 0 );
こうする事で変数の中に赤を取得した事になります。
〜線〜
線はDrawLine関数を使用します。
座標(x1,y1)から(x2,y2)へラインを引く時
DrawLine ( x1 , y1 , x2 , y2 , Color_Flag);
で指定します。
第五引数のColor_Flagはint型の先ほど格納した色のハンドルを指定します。
〜四角形〜
四角形はDrawBox関数を使用します。
四角形の左上の座標(x1,y1)から右下の座標(x2,y2)の四角形を書くとき
DrawBox ( x1 , y1 , x2 , y2 , Color_Flag , Fill_Flag );
で指定します。
Color_Flagは同上。
Fill_Flagは四角形の中を塗りつぶすかどうかのフラグで
FALSE=塗りつぶさない
TRUE=塗りつぶす
という意味です。
〜円〜
円はDrawCircle関数を使用します。
中心の座標(x,y)、半径rの円を書くとき
DrawCircle ( x , y , r , Color_Flag , Fill_Flag );
で指定します。
Color_Flag、Fill_Flagは同上
↓コピー&コンパイル用サンプルプログラム↓
#include "DxLib.h" int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,LPSTR lpCmdLine, int nCmdShow ){ ChangeWindowMode( TRUE ) ; // ウインドウモードに変更 if( DxLib_Init() == -1 ) return -1; // DXライブラリ初期化処理 エラーが起きたら終了 int White,Red,G_Blue; White = GetColor( 255 , 255 , 255 ) ; // 白色の値を取得 Red = GetColor( 255 , 0 , 0 ) ; // 赤色の値を取得 G_Blue = GetColor( 0 , 255 , 255 ) ; // 緑と青の混合色の値を取得 DrawLine ( 10 , 10 , 630 , 10 , White ) ; // 線を描画 DrawBox ( 10 , 50 , 310 , 100 , G_Blue , FALSE) ; // 四角形を描画 DrawBox ( 10 , 150 , 310 , 200 , G_Blue , TRUE ) ; // 四角形を描画(塗りつぶし) DrawCircle( 500 , 300 , 100 , Red , TRUE) ; // 円を描画(塗りつぶし) WaitKey() ; // キーの入力待ち(『WaitKey』を使用) DxLib_End() ; // DXライブラリ使用の終了処理 return 0 ; // ソフトの終了 }
実行結果
- Remical Soft -