前節までの学習で、(
Canvasプロパティ上の)
Pixelsプロパティに任意の色を指定する事で原理的にはどのような図形でも描けることが分かったと思います。しかし、
【応用問題 7-1】をプログラミングした人は気づいたと思いますが、斜線を引くことは少し面倒ですね。
直線を描画するには、LineToメソッドを使います。
- LineToメソッド :現在のペンを使って直線を描画
- MoveToメソッド :現在のペンの位置の値を設定
LineToメソッドは、現在のペンの位置と指定した点を結ぶ直線を、
Canvasの
Penプロパティで設定されているペンを使って描画します。直線を描画した後のペンの位置は、
LineToメソッドで指定した位置になります。
現在のペンの位置は、
MoveToメソッドで値を指定することができます。
【例】 (10、10)と(50、50)を結ぶ直線を描画する
Canvas->MoveTo(10,10);
Canvas->LineTo(50,50); |
|
練習問題 |
【基礎課題7-2】をMoveToおよびLineToメソッドを用いて書き直すと次のようになります。
ここに、描画する線の色は、PenというプロパティにあるColorプロパティに指定します。まさに使用するPenの色を指定している訳です。
作成したら、各自動作を確認してください。この用例をみればMoveToおよびLineToメソッドの用法は理解できると思います。
基礎課題7-3 |
今、点(x1,y1)と点(x2,y2)を結ぶ直線を、TColor型変数clで与えられる色で描く手続きLine(x1,y1,x2,y2,cl)を定義しましょう。すると上の【練習問題】のプログラムは次のようになります。
このとき、手続きLineの定義はどのようになるでしょうか?下の空欄を埋めてプログラムを完成させてください。