ユーザ用ツール


reference:グラフィック

グラフィック

GTARGET 描画対象ページ

グラフィック描画対象ページを指定する

引数

描画対象ページ

0~5 GRP0~GRP5

GTARGET 0

GTARGET()

現在のグラフィック描画対象ページを取得する

返値

描画対象ページ

WP=GTARGET()

GCOLOR 色コード

グラフィック描画色を指定する

引数

色コード

・色を8桁の16進数で表わしたもの
・&HAARRGGBBと、A,R,G,Bそれぞれ2桁指定する
・Aは透明度,Rは赤,Gは緑,Bは青の強さを0~255(&H00~&HFF)で指定する
・A(透明度)は0が完全に透明、255で完全に不透明
・RGB関数、または#C_ではじまる色定数を使うと簡単に指定できる

GCOLOR &HFF0A141E
GCOLOR RGB(255,10,20,30)
GCOLOR #C_BLUE

GCOLOR()

グラフィック描画色を取得する

引数

なし

返値

グラフィック描画色

C = GCOLOR()

RGB(R,G,B)
RGB(A,R,G,B)

RGB値から色コードを計算する

引数

A

透明度:0~255
・省略すると255が指定される

R,G,B

色の要素:R,G,Bそれぞれ 0~255

・色の例

RGB(0,0,0)
RGB(255,255,255)
薄いグレー RGB(224,224,224)
グレー RGB(128,128,128)
濃いグレー RGB(64,64,64)
RGB(255,0,0)
ピンク RGB(255,96,208)
RGB(160,32,255)
水色 RGB(80,208,255)
RGB(0,32,255)
黄緑 RGB(96,255,128)
RGB(0,192,0)
黄色 RGB(255,224,32)
オレンジ RGB(255,160,16)
茶色 RGB(160,128,96)
薄紅色 RGB(255,208,160)

返値

引数から計算された色コード

C1=RGB(0,100,200)
C2=RGB(128,0,100,200)

RGB 色コード OUT [A,]R,G,B

色コードからRGBの各成分を得る

引数

色コード

ARGB各8ビットの色コード
・色コードの説明はGCOLORを参照

返値

A

透明度情報を受け取る変数(0~255)

R,G,B

8ビット色情報を受け取る変数(各0~255)

RGB C OUT R,G,B

RGBF(R,G,B)
RGBF(A,R,G,B)

実数のRGB値から色コードを計算する

引数

A

透明度:0~1.0
・省略すると1.0が指定される

R,G,B

色の要素:R,G,Bそれぞれ 0~1.0

返値

引数から計算された色コード

RGBF 色コード OUT [A,]R,G,B

色コードからRGBの各成分を得る(実数版)

引数

色コード

ARGB各8ビットの色コード
・色コードの説明はGCOLORを参照

返値

A

透明度情報を受け取る変数(0~1.0)

R,G,B

8ビット色情報を受け取る変数(各0~1.0)

HSV(色相,彩度,明度)

HSV値から色コードを計算する

引数

色相

色の種類(H):正の値
・角度と同じで、360を超えると0に戻る扱いになる
・数が大きくなると赤→黄→緑→青→紫となめらかに変化する

彩度

色のあざやかさ(S):0~255
・数が小さいほど白っぽくなる

明度

色の明るさ(V):0~255
・0は黒、255は一番明るい状態をあらわす

返値

HSV値相当の色コード

FOR I=0 TO 360
GPSET I,10,HSV(I,255,255)
NEXT

HSV 色コード OUT 色相,彩度,明度

色コードをHSV値に変換する

引数

色コード

変換したい色コード
・色コードの説明はGCOLORを参照

返値

色相

指定した色の色相

彩度

指定した色の彩度

明度

指定した色の明度

HSV RGB(192,128,0) OUT H,S,V
?H,S,V

GCLIP [始点X,始点Y,終点X,終点Y]

グラフィック画面の書き込みクリッピング領域を指定する

・クリッピング領域を指定すると、以後のグラフィック描画命令は指定範囲内のみが操作対象となる
・引数を全て省略すると、グラフィックページ全体を指定した事になる

引数

始点X,Y

クリッピング領域の始点座標(X,Y共に0~2047)

終点X,Y

クリッピング領域の終点座標(X,Y共に0~2047)

GCLIP 100,100,200,200

GCLIP OUT 始点X,始点Y,終点X,終点Y

グラフィック画面の書き込みクリッピング領域を取得する

返値

始点X,Y

クリッピング領域の始点座標

終点X,Y

クリッピング領域の終点座標

GCLIP OUT LEFT,TOP,RIGHT,BOTTOM

GCLS [色コード]

グラフィックページの内容を指定色で塗りつぶす

・塗りつぶされる範囲はGCLIPの設定範囲

引数

色コード

塗りつぶしに使用する色コード
・色コードの説明はGCOLORを参照
・省略すると0(透明色)で塗りつぶされる

GCLS RGB(32,32,32)

GPGET(座標X,座標Y)

グラフィック画面の指定座標の色を取得する

引数

座標X,Y

色を取得する座標
・グラフィックページ範囲外の座標を指定すると0が返る

返値

指定座標のピクセルの色コード
・色コードの説明はGCOLORを参照

C=GPGET(100,100)

GPSET 座標X,座標Y[,色コード[,描画方法]]

グラフィック画面に点を打つ

引数

座標X,Y

点を打つ座標

色コード

描画する点の色
・色コードの説明はGCOLORを参照
・省略するとGCOLORで設定した色を使用する

描画方法

0 単純描画 #G_NORMAL
1 透明度が0以外の時単純描画 #G_NORMAL2
2 半透明描画 #G_ALPHA
3 描画先の透明度も考慮して半透明描画 #G_ALPHA2
4 加算描画 #G_ADD

・省略すると0を指定した事になる

GPSET 100,50

GLINE 始点X,始点Y,終点X,終点Y[,色コード[,描画方法]]

グラフィック画面に直線を引く

引数

始点X,Y

始点座標

終点X,Y

終点座標

色コード

描画する線の色
・色コードの説明はGCOLORを参照
・省略するとGCOLORで設定した色を使用する

描画方法

0 単純描画 #G_NORMAL
1 透明度が0以外の時単純描画 #G_NORMAL2
2 半透明描画 #G_ALPHA
3 描画先の透明度も考慮して半透明描画 #G_ALPHA2
4 加算描画 #G_ADD

・省略すると0を指定した事になる

GLINE 0,0,399,239,RGB(0,255,255)

GCIRCLE 中心点X,中心点Y,半径[,色コード[,描画方法]]

グラフィック画面に円を描く

引数

中心点X,Y

中心点座標

半径

円の半径(ドット) 1~

色コード

描画する円の色
・色コードの説明はGCOLORを参照
・省略するとGCOLORで設定した色を使用する

描画方法

0 単純描画 #G_NORMAL
1 透明度が0以外の時単純描画 #G_NORMAL2
2 半透明描画 #G_ALPHA
3 描画先の透明度も考慮して半透明描画 #G_ALPHA2
4 加算描画 #G_ADD

・省略すると0を指定した事になる

GCIRCLE 200,120,30

GCIRCLE 中心点X,中心点Y,半径,開始角,終了角,フラグ[,色コード[,描画方法]]

グラフィック画面に円弧を描く

引数

中心点X,Y

中心点座標

半径

円の半径(ドット) 1~

開始角,終了角

円弧の書き始めの角度と書き終わりの角度
・時計の3時の方向が0度で、時計回りに角度が進む。
・0~360以外の値は0~360以内の値に丸められる。例えば-20は340と同じ意味。

フラグ

0 円弧
1 扇型

色コード

描画する円弧の色
・色コードの説明はGCOLORを参照
・省略するとGCOLORで設定した色を使用する

描画方法

0 単純描画 #G_NORMAL
1 透明度が0以外の時単純描画 #G_NORMAL2
2 半透明描画 #G_ALPHA
3 描画先の透明度も考慮して半透明描画 #G_ALPHA2
4 加算描画 #G_ADD

・省略すると0を指定した事になる

GCIRCLE 200,120,30,0,45,1

GBOX 始点X,始点Y,終点X,終点Y[,色コード[,描画方法]]

グラフィック画面に四角形を描く

引数

始点X,Y

始点座標

終点X,Y

終点座標

色コード

描画する四角形の色
・色コードの説明はGCOLORを参照
・省略するとGCOLORで設定した色を使用する

描画方法

0 単純描画 #G_NORMAL
1 透明度が0以外の時単純描画 #G_NORMAL2
2 半透明描画 #G_ALPHA
3 描画先の透明度も考慮して半透明描画 #G_ALPHA2
4 加算描画 #G_ADD

・省略すると0を指定した事になる

GBOX 0,0,399,239

GFILL 始点X,始点Y,終点X,終点Y[,色コード[,描画方法]]

グラフィック画面に四角形を描いて塗りつぶす

引数

始点X,Y

始点座標

終点X,Y

終点座標

色コード

描画する四角形の色
・色コードの説明はGCOLORを参照
・省略するとGCOLORで設定した色を使用する

描画方法

0 単純描画 #G_NORMAL
1 透明度が0以外の時単純描画 #G_NORMAL2
2 半透明描画 #G_ALPHA
3 描画先の透明度も考慮して半透明描画 #G_ALPHA2
4 加算描画 #G_ADD

・省略すると0を指定した事になる

GFILL 0,0,399,239

GPAINT 開始点X,開始点Y[,塗りつぶし色[,境界色]]

グラフィック画面を塗りつぶす

・境界色省略時、開始点座標にある色の範囲を塗る

引数

開始点X,Y

塗りつぶしを開始する座標

塗りつぶし色

塗りつぶしに使用する色
・色コードの説明はGCOLORを参照
・省略するとGCOLORで設定した色を使用する

境界色

塗りつぶしの境界として見る色
・省略した場合は塗りつぶし色と異なる色をすべて境界として見る

GPAINT 200,120,RGB(255,0,0),RGB(0,0,0)

GCOPY [転送元ページ,]始点X,始点Y,終点X,終点Y,転送先X,転送先Y,描画方法

他のグラフィックページから画像をコピーする

引数

転送元ページ

省略時 現在の描画ページ
0~5 GRP0~GRP5

始点X,Y 終点X,Y

コピー元範囲の始点座標と終点座標

転送先X,Y

コピー先範囲の始点座標

描画方法

0 単純描画 #G_NORMAL
1 透明度が0以外の時単純描画 #G_NORMAL2
2 半透明描画 #G_ALPHA
3 描画先の透明度も考慮して半透明描画 #G_ALPHA2
4 加算描画 #G_ADD

GCOPY 0,0,0,100,100,200,100 ,1

GCOPY 転送元ページ,始点X,始点Y,終点X,終点Y,転送先X,転送先Y,色コード,描画方法

他のグラフィックページから画像をコピーする

引数

転送元ページ

コピー元のグラフィックページ:0~5

始点X,Y 終点X,Y

コピー元範囲の始点座標と終点座標

転送先X,Y

コピー先範囲の始点座標

色コード

コピー元のピクセルと乗算する色コード

描画方法

0 単純描画 #G_NORMAL
1 透明度が0以外の時単純描画 #G_NORMAL2
2 半透明描画 #G_ALPHA
3 描画先の透明度も考慮して半透明描画 #G_ALPHA2
4 加算描画 #G_ADD

GCOPY 0,0,0,100,100,200,100,#C_RED,1

GSAVE [転送元ページ,][X,Y,幅,高さ,]転送先配列

画像を配列へコピーする

引数

転送元ページ

省略時 現在の描画ページ
0~5 GRP0~GRP5

X,Y,幅,高さ

コピー元範囲の始点X,Y座標,幅,高さ
・省略すると現在のクリッピング領域を使用する

転送先配列

画像を格納する配列変数
※配列の要素が不足する場合、1次元配列に限り自動追加される

DIM WORK[0]
GSAVE 0,0,0,512,512,WORK

GLOAD [X,Y,幅,高さ,]画像配列,描画方法
GLOAD [X,Y,幅,高さ,]画像配列,色コード,描画方法

画像データを配列からグラフィック画面にコピーする

引数

X,Y,幅,高さ

コピー先範囲の始点X,Y座標,幅,高さ
・省略すると現在のクリッピング領域を使用する

画像配列

GSAVEによって画像データが格納された数値配列

色コード

画像配列内の画像データと乗算する色コード
・省略すると画像配列がそのまま使用される

描画方法

0 単純描画 #G_NORMAL
1 透明度が0以外の時単純描画 #G_NORMAL2
2 半透明描画 #G_ALPHA
3 描画先の透明度も考慮して半透明描画 #G_ALPHA2
4 加算描画 #G_ADD

GLOAD 0,0,512,512,WORK,0
GLOAD WORK,#C_RED,0

GLOAD [X,Y,幅,高さ,]インデックス画像配列,パレット配列,描画方法
GLOAD [X,Y,幅,高さ,]インデックス画像配列,パレット配列,色コード,描画方法

画像データをインデックス画像配列から色変換しながらグラフィック画面にコピーする

引数

X,Y,幅,高さ

コピー先範囲の始点X,Y座標,幅,高さ(ドット)
・省略すると現在のクリッピング領域を使用する

インデックス画像配列

インデックス画像形式で保存された画像が格納された数値配列

パレット配列

パレットデータが格納された数値配列
・パレットデータは、インデックス画像内で使用する最大数より多い要素数の数値配列で、各要素にはインデクス画像内の数値に対応する色コードが入る

色コード

画像配列内の画像データと乗算する色コード
・省略すると画像配列がそのまま使用される

描画方法

0 単純描画 #G_NORMAL
1 透明度が0以外の時単純描画 #G_NORMAL2
2 半透明描画 #G_ALPHA
3 描画先の透明度も考慮して半透明描画 #G_ALPHA2
4 加算描画 #G_ADD

GLOAD 0,0,512,512,WORK,PALETTE,0
GLOAD WORK,PALETTE,#C_BLUE,1

GTRI X1,Y1,X2,Y2,X3,Y3[,色コード[,描画方法]]

グラフィック画面に三角形を描いて塗りつぶす

引数

X1,Y1

頂点1

X2,Y2

頂点2

X3,Y3

頂点3

色コード

描画する三角形の色
・色コードの説明はGCOLORを参照
・省略するとGCOLORで設定した色を使用する

描画方法

0 単純描画 #G_NORMAL
1 透明度が0以外の時単純描画 #G_NORMAL2
2 半透明描画 #G_ALPHA
3 描画先の透明度も考慮して半透明描画 #G_ALPHA2
4 加算描画 #G_ADD

・省略すると0を指定した事になる

GTRI 200,10,300,200,100,200

GPUTCHR X,Y,"文字列"[,フォント種類[,色コード[,描画方法]]]
GPUTCHR X,Y,"文字列",フォント種類,スケールX,スケールY,色コード[,描画方法]

グラフィック画面に文字を描く

引数

X,Y

表示座標

文字列

表示する文字列

フォント種類

参照するフォントの種類。8または16を指定可能。
・省略すると16が指定される

スケールX,Y

表示倍率:1~32767
・省略すると1,1(等倍)が指定される

色コード

描画する文字の色
・色コードの説明はGCOLORを参照
・省略するとGCOLORで設定した色を使用する

描画方法

0 単純描画 #G_NORMAL
1 透明度が0以外の時単純描画 #G_NORMAL2
2 半透明描画 #G_ALPHA
3 描画先の透明度も考慮して半透明描画 #G_ALPHA2
4 加算描画 #G_ADD

・省略すると0を指定した事になる

GPUTCHR 10,10,"あいう" 

GPUTCHR X,Y,文字コード[,フォント種類[,色コード[,描画方法]]]
GPUTCHR X,Y,文字コード,フォント種類,スケールX,スケールY,色コード[,描画方法]

グラフィック画面に文字を描く

引数

X,Y

表示座標

文字コード

表示する文字の文字コード

フォント種類

参照するフォントの種類。8または16を指定可能。
・省略すると16が指定される

スケールX,Y

表示倍率:1~32767
・省略すると1,1(等倍)が指定される

色コード

描画する文字の色
・色コードの説明はGCOLORを参照
・省略するとGCOLORで設定した色を使用する

描画方法

0 単純描画 #G_NORMAL
1 透明度が0以外の時単純描画 #G_NORMAL2
2 半透明描画 #G_ALPHA
3 描画先の透明度も考慮して半透明描画 #G_ALPHA2
4 加算描画 #G_ADD

・省略すると0を指定した事になる

GPUTCHR 10,10,ASC("A")
GPUTCHR 20,20,&H60

GARRAY(グラフィックページ)

グラフィックページの内容を表す整数配列を取得する

・グラフィックページを整数型2次元配列として直接読み書きが可能
・書き込んだ結果を反映するにはGUPDATEを使用する

引数

グラフィックページ

・配列を取得する対象のページを指定する

0~5 GRP0~GRP5

返値

・対象ページの内容を表す整数型2次元配列

G=GARRAY(0)
G[0,0]=#C_WHITE
PRINT HEX$(G[100,100])

GUPDATE グラフィックページ[,始点X,始点Y,終点X,終点Y]

GARRAYによる書き込み内容を表示に反映させる

・通常のグラフィック描画命令では内部でGUPDATE相当の処理を行っているため、描画命令実行後にGUPDATEを使用しても何の効果もない
・GUPDATEを使用しなくても、書き込み座標付近に他の描画命令で書き込みを行うと自動的に反映が行われる

引数

グラフィックページ

反映を行うグラフィックページ

0~5 GRP0~GRP5

始点X,始点Y,終点X,終点Y

反映を行いたい四角形領域の始点と終点座標(各0~2047)
・座標指定はヒント情報として扱われ、領域からはみでた部分が更新される事もある

G=GARRAY(0)
G[0,0]=#C_WHITE
GUPDATE 0

GSAMPLE グラフィックページ,サンプリングタイプ

グラフィックページのサンプリング方法を設定する

・サンプリングとは、スプライトやテキストスクリーンでグラフィックページから色を参照する際に、UV座標からグラフィックページのどの座標を参照するかを決める事
・スプライト単位・テキストスクリーン単位・レイヤー単位に変更する事はできない

引数

グラフィックページ

設定を行うグラフィックページ: 0~5

サンプリングタイプ

0 ボーダー(0~2047以外のUV座標は透明色になる)
1 リピート(グラフィックページが0~2047の外にもずっと繰り返しているように扱う)

GSAMPLE(グラフィックページ)

グラフィックページのサンプリング方法を取得する

引数

グラフィックページ

設定を取得するグラフィックページ: 0~5

返値

現在設定されているサンプリングタイプ

reference/グラフィック.txt · 最終更新: 2019/08/15 12:54 (外部編集)

ページ用ツール