新しく発言する  EXIT  インデックスへ

Linux版でflood関数が使えない


  Linux版でflood関数が使えない 島村1243 2008/04/19 22:14:47 
  PAINT,FLOODはWindows版でのみ使えます。 白石 和夫 2008/04/20 06:47:23 
   └有難うございました。 島村1243 2008/04/20 09:41:39 
    └簡易ペイント処理を作成する。 山中和義 2008/04/20 10:10:19 
Re: 有難うございました。  返事を書く  ノートメニュー
山中和義 <drdlxujciw> 2008/04/20 10:10:19
簡易ペイント処理を作成する。
ただし、大きな領域の場合、(BASICの)システムのスタックがオーバーフローする可能性があります。


SUB fill(x,y,c) !塗りつぶし
SET POINT STYLE 1 !ドットの形
SET POINT COLOR c !塗りつぶす色

ASK PIXEL VALUE (x,y) ac !領域の色
PLOT POINTS: x,y !塗りつぶす

ASK PIXEL VALUE (worldx(pixelx(x)+1),y) tc !右
IF tc=ac THEN CALL fill(worldx(pixelx(x)+1),y,c)

ASK PIXEL VALUE (worldx(pixelx(x)-1),y) tc !左
IF tc=ac THEN CALL fill(worldx(pixelx(x)-1),y,c)

ASK PIXEL VALUE (x,worldy(pixely(y)+1)) tc !上
IF tc=ac THEN CALL fill(x,worldy(pixely(y)+1),c)

ASK PIXEL VALUE (x,worldy(pixely(y)-1)) tc !下
IF tc=ac THEN CALL fill(x,worldy(pixely(y)-1),c)
END SUB




塗りつぶしの部分は、

IF VAL(m$(i:i))=1 THEN CALL fill(x,y,4) !塗りつぶし

とする。
     └重いので、安直な方策をとりました。 島村1243 2008/04/20 11:29:08  (修正1回)

 インデックスへ  EXIT
新規発言を反映させるにはブラウザの更新ボタンを押してください。