PATTERN - [画像表示] |
||||||
… 配列からパターン表示
PATTERN 配列名,X1,Y1,PAGE,V,W,MODE
配列名: 2次元の配列の名前を指定
X1: 表示画面のX座標
Y1: 表示画面のY座標
PAGE: 描画するページ(通常は0)
V: パターンの横幅
W: パターンの縦幅
MODE: 画面全体書き換え(0),画面変更分書き換え(1)
テクスチャ画面に読み込んだ画像からパターンの構成要素を切り出し、2次元配列の値をもとに画面にパターンを表示します。
MODEを1にすると、自動的に前回からの変更箇所のみ書き換えるため、画面の書き込みが速くなります。
(テクスチャ)
△◇■←右端に到達したら
○◆◎
↑1段下がって切り出し
↓
(配列)
1,1,1,1
1,0,1,3
1,2,5,1
4,0,1,4
↓
(パターン)
◇◇◇◇
◇△◇○
◇■◎◇
◆△◇◆
パターンの構成要素は、テクスチャ画面に読み込んだ画像の左上角から切り出します。切り出しは、V,W に指定した縦横幅で行われます。構成要素には、左上角を0として、順番に番号がふられ、画像の右端まで到達したら1段下に下がって切り出しを続行します。
画像を部分的に書き換える必要がない場合や、スクロールを行う場合は、BGを使用します。
PATTERNを実行すると、そのままパターン画像が表示されます。REFRESHを実行する必要はありません。
(サンプル 1)
REM 944BASIC 'パターンサンプル'
SETDIRECTORY 'F1:\944BASIC\'
SETPAGE 2: BITMAP "9B_REF.BMP",0,0
CLS
DIM B(9,9)
REM パターンで表示する
PATTERN B,0,0,0,16,16,0
KEYWAIT
REM 2次元配列に値を入れる
B(2,2)=2
B(5,5)=3
B(8,8)=4
REM 変更分だけ部分表示して終わり
PATTERN B,0,0,0,16,16,1
KEYWAIT
END
(サンプル 2)
REM 944BASIC 'POINTとPATTERN'
SETDIRECTORY 'F1:\944BASIC\'
SETPAGE 2: BITMAP 'F1:\944BASIC\9B_REF.BMP',0,0
COLORFG 0,0,0:COLORBG 255,255,255
CLS: FONT 64
DIM B(11,11)
A='華'
LOCATE 0,0:PRINT A
FOR I=0 TO 11
FOR J=0 TO 11
IF POINT(J,I)=65535 THEN B(J,I)=3 ELSE B(J,I)=0
NEXT J
NEXT I
PATTERN B,24,24,0,16,16,0
KEYWAIT
PATTERN - [画像表示] |