二十三歩目 お絵描きソフトを作る(3)

〜line命令で線を引く〜
     さあ、なんか前の歩目は あんまり楽しくなかったねm(_ _)m スマン
     まとめて言うと 二十一歩目のプログラムで 点と点を線で結べばいい
     こう言うことだ でHSPの命令でどんなのがあれば良いだろうか?
     もう分かるよね 線を引く命令があれば良いのだ!
     それこそが line だ  使い方が簡単なので簡単に説明する

	
	line 100,150,200,300
	stop

     とやってみてくれ するとこうなる
   
     ※上の赤い線は僕がペイントで説明しやすくするために書いた
     納得した? 上で書いた line 100,150,200,300 の
     100というのは 線の片方のほうのX座標
     150というのは 線の片方のほうのY座標
     200というのは 線のもう一方のほうのX座標
     300というのは 線のもう一方のほうのY座標
     と言うことだ

〜lineを埋め込む〜
     

	
	screen 0,200,200		;ウインドウ0の大きさを変更
	repeat				;繰り返しの始め
	getkey key,1			;キー番号1のキーが押されたらkeyに1を入力
	if key=1:line x,y,mousex,mousey	;keyが1だったら x座標x,y座標yの位置から
					;x座標mousex y座標mouseyまで 線を引く
	x=mousex:y=mousey		;x変数にmousexの数字をy変数にmouseyの数字を入力
	await 1				;待つ
	loop				;repeatヘ戻る


     これを実行してみてくれ
     きれーーーに 絵が書ける
     

  x=mousex:y=mousey

     これだね Xという変数にmousexの値を入れて Yという変数にmouseyの値を入れておく
     こうすることで現在の mousex  mousey の値を保存するんだ
 
     絵を書く部分のプログラムだけを説明すると
     x=mousex:y=mousey でmousex  mousey の値を保存して
     そして次に await 1 で待って 
     loop  repeat まで戻って 
     getkey key,1 でマウスが押されているかチェックして
     if key=1:line x,y,mousex,mousey で 前のmousex(変数xに保存してある)と
       mousey(変数yに保存してある)の位置から 今の mousex と mousey の位置まで
       線を引きます
     そしてまた x=mousex:y=mouseyで現在のmousexmouseyの値を
       変数にそれぞれ保存します
     
      さあみなさん どう?納得したかね
      ちょっと今回は難しかったなぁ
      じゃあ皆さん それぞれどんどん自分で好きなようにアレンジしてみてください
      絵を保存する機能をつけるとか
      消しゴム機能とか 自己流にね
      もし良かったら 僕にメールで作ったソフトを送ってくれるとうれしいです

まとめ

       line・・・片方のXY座標の位置から

           もう片方のXY座標まで線を引く

        line 100,150,200,300

戻る コウザへ ホームへ 次へ