ファーストイヤー・セミナーⅡ 第13回 2次元グラフィックス(1)
2次元グラフィックス Ultra-C では、これまで利用してきた「標準入出力」 以外に「グラフィックス画面」があり、図形などを 表示できる C 言語のグラフィックスには細かな規定がなく、こ れから学ぶ内容が他の環境、システムでは利用でき ないことも多いので注意すること
とにかくやってみよう 以下のようなプログラムを作成し、実行してくださ い ← いつもと異なるので注意
直線を描く関数( Line ) Line(x1, y1, x2, y2) は点( x1, y1 )から点( x2, y2 )まで直線を引く関数である 先ほどの Line(10, 10, 50, 50) なら点( 10, 10 )から 点( 50, 50 )まで直線が引かれる
グラフィックの位置 グラフィック・ウインドウ上の位置は座標( x, y ) で表される 通常のグラフなどの軸と異なり、グラフィックでは 左上が (0, 0) となり、 x 座標は右へ、 y 座標は下へ行 くほど大きくなる (0, 0) (10, 10) (50, 50) x 軸 y 軸
直線を描く関数(2) 続いて、直線の色や形式、太さなどを変更してみよ う
直線の設定 直線を描く場合には、 (1)直線の色を指定する SetLineColor( 色指定 ); (2)直線の形式・太さを指定する SetLineStyle( 形式,太さ ); (3)線を描く Line ( 始点の x 座標, 始点の y 座標, 終点の x 座標, 終点の y 座 標 ) とする。先ほどのプログラムを確認してみよう
色指定 色指定は以下のようになる。 色の指定は、実際に描画する部分の直前におこなうこと。
直線の形式の指定 直線の形式は以下のように指定する 直線の太さは整数値で表す(ただし太さが反映されるの は PS_SOLID のみ) 数字が大きいほど太い実線になる
試してみよう 色指定、形式指定を参考にしながら色々な線を引いてみ よう (例)
背景色の変更 背景色を変更したい場合は SetBkColor( 色指定 ); ClearScreen; ← 画面をクリアして背景色で塗りつぶ す とする。
グラフィックスの注意点 図形を描く場合は、プログラムの順序に従って上書きされ ていく 色の変更、描画の順序を考えてプログラムを作成すること 例)線を描いたあとで背景色を上書きしているので、 線が塗りつぶされて描画されない
点を描く関数( SetPixel ) 点を描くには SetPixel(x 座標, y 座標, 色指定) とする SetPixel, Line などの関数で座標を指定する場合、変数を 用いることもできる
練習:三角形を描く Line 関数を使って三角形を描いてみよう ただし三角形の頂点の座標はそれぞれ ( 320, 50 )、( 200, 250 )、( 440, 250 ) とする 線の色や種類、背景色は自由に変えてよい
プログラム例
第13回のレポート 以下のプログラムを作成し、メールで提出してくださ い 星型を描画するプログラム – どのような星型でもよい – 色や線の形式も自由に選んでよい