プチコンのプ その6 お絵描きツールを作ろう
公式トップの超短いプログラムから
プチコンのプ、ちょっと行き詰まり感があるので全然違うことをやりましょう^^; プチコンmkⅡの公式サイトにある、超短いプログラムって打ち込みました? #p4petitcom http://t.co/ZzQTteT7
2012-12-09 13:18:28きれいな線を引きたい!
簡易お絵かきプログラムなわけですが、うまく線がつながらないのがさびしいところ。 #p4petitcom http://t.co/flHd9PsH
2012-12-09 13:21:31つまりこれは、GPSETを一回実行してから、次に実行するまでの間にペンが動いているからです。前の位置を覚えておいて、今の位置までGLINEで線を引けばカンペキです! #p4petitcom http://t.co/hI0Ulgfm
2012-12-09 13:32:16しまった、変な一筆書きみたいになってしまった。そりゃそうか。あとやっぱり途切れがある。 #p4petitcom http://t.co/u5FU1U88
2012-12-09 13:34:15途切れ防止に、ループにVSYNCを入れます。あと、ペンが画面を離れたらXを-1にしておいて、それをチェックしてGPSETとGLINEを使い分けます。 #p4petitcom http://t.co/uXjxHZI3
2012-12-09 14:26:44カラーパレットをつけよう
絵は描けるけど白黒はさびしいね。画面の左下にパレットを作って、色を選べるようにしましょう。変数C(カラーのC)を色にして、12〜14行でタッチした場所の色を拾います。17〜18行の15をCに変えたのがミソ。 #p4petitcom http://t.co/YCBSKP8g
2012-12-09 18:30:56アイコンメニューを追加
#p4petitcom 絵が気に入らないときいちいちセレクト→スタートで消すとか不便だし、塗りつぶしやセーブもしたい。そこでアイコン機能を使います。編集画面の右下の矢印と同じようなやつがICONSET命令で使えます。 http://t.co/Gfd5rFIJ
2012-12-10 08:25:23ACLSを削ってますが、大事なのは11行。ICONCHK関数で押されたアイコンの番号がわかります。それをそのままON〜GOTO文のパラメータにします。何も押されてないとき(-1)は、自然に次の行に進みます。 #p4petitcom http://t.co/ydrKtURj
2012-12-10 08:31:34◎DRAWの頭で、MODE変数が1ならGPAINTを実行。0なら以前と同じGLINEかGPSET。 #p4petitcom http://t.co/FoCagPCz
2012-12-10 08:34:12アイコン0,1に対応する、ペンと塗りつぶしを切り替える◎PENと◎PAINTラベル。 #p4petitcom http://t.co/Of0FkyvZ
2012-12-10 08:37:16アイコン2,3に対応する、◎SAVEと◎CLEARラベル。下画面なのでGRP1をセーブするのと、パレットをつぶさないためGCLSでなくGFILLで下画面を消します。 #p4petitcom http://t.co/Uqfg26RZ
2012-12-10 08:39:53バグ発覚!
下へ上へと編集場所が移りましたが、プログラムの説明はこの方がしやすい感じですね。ところがこのプログラムにはバグがあります。ペンとペイントを切り替えると、色が黒になってしまうのです。これは不便! #p4petitcom
2012-12-10 08:42:5217行のGSPOIT命令の次の行に?Cを入れてみましょう。ペンとペイントのアイコンをタッチすると、ペンモード、ヌリツブシモードのあとに0が続けて表示されます。#p4petitcom
2012-12-10 08:53:29どうやらアイコンを押したあと何フレームかTCHSTが1になるため、アイコンの下のGRPの色を拾ってしまうようです。なるほど。 #p4petitcom
2012-12-10 08:54:35一行だったON〜GOTOが複雑になりました。まずICONCHKの値をIに入れ、-1なら◎NOICONにジャンプ。0〜3なら、ペンが画面から離れるまで待ってからON I GOTOしています。 #p4petitcom http://t.co/eGnSC4AJ
2012-12-10 09:08:06このバグの回避方法は他にもあります。ON〜GOTOの次のループでペンが離れるのを待つとか…色を変えるたびにアイコンの下をGFILLするのも手です。その方がプログラムの流れがシンプルで良かったかも(笑) #p4petitcom
2012-12-10 09:13:07できばえ。最初のと比べよう!^^; セーブするとパレットが残ってる問題とか、ペイントでアイコンエリア塗れちゃう問題とかありますが、ひとまず完成としましょう! #p4petitcom http://t.co/AVonnJPc
2012-12-10 09:28:43