TITLE:x * 上級者向けのblikeマニュアル(2) [#cd17d333] -(by [[K]], 2011.03.08) -C言語の文法が分からないという人を対象にはしていません。そういう人は[[blike/intro]]へ。 -ドライバ開発者向けの情報は[[blike/drv]]にあります。 *** グラフィック描画関数群 [#fe07220d] -[01f以降] setPix(int x, int y, int c) --画面に点を打つ。cは色で0x000000~0xffffffが有効。 -[01f以降] drawLine(int x0, int y0, int x1, int y1) --線を引く。色は事前に color() か setCol() で指定しておくこと。 --アルゴリズムの関係で、drawLine(x0, y0, x1, y1) と drawLine(x1, y1, x0, y0) が厳密には重ならない場合もある。とはいえ、ズレは1ピクセル程度である。 ---これがいやなら bball00a のようにすればいいだろう。 if (x0 <= t[j].x) drawLine(x0, y0, t[j].x, t[j].y); else drawLine(t[j].x, t[j].y, x0, y0); -[01f以降] drawRect(int sx, int sy, int x0, int y0) --長方形を描く。sxとsyが大きさで、x0とy0は左上の頂点の座標である。色は事前に color() か setCol() で指定しておくこと。 -[01f以降] fillRect(int sx, int sy, int x0, int y0) --塗りつぶした長方形を描く。色は事前に color() か setCol() で指定しておくこと。 -[01f以降] fillOval(int sx, int sy, int x0, int y0) --塗りつぶした楕円を描く。引数の意味するところは、この4パラメータで「仮想的な」長方形を指定し、その長方形に内接するような楕円を描画するということである。このような仕様にしたのは、Javaアプレットの関数の仕様をまねたからである。色は事前に color() か setCol() で指定しておくこと。 -[01f以降] setCol(int c) --描画色を設定する。0x000000~0xffffffが有効。これは文字表示色にもなる。だから color() よりも微妙な色指定ができることになる。 -[01f以降] setBCol(int b) --背景色を設定する。0x000000~0xffffffが有効。といっても背景色は文字表示関数と cls() くらいしか参照してない。 -[01f以降] int iCol(int c) --cは0~15が有効で、これを0x000000~0xffffffの整数に変換する。color()関数が内部で使っているものを表に出しただけ。 -[01f以降] int rgb(int r, int g, int b) --r, g, b はそれぞれ0~255が有効。これらを0x000000~0xffffffの整数に変換する。 -[01f以降] drawStr() -[01f以降] setMode() -[01f以降] openVWin(int n, int sx, int sy) --裏画面(仮想画面)を準備する。n=0は表画面のことなので、 openWin(sx, sy); は openVWin(0, sx, sy); と同等である。 --nは0~15が有効なので、裏画面は最大15枚持てるということになる。裏画面は何を描いても画面には反映されない。裏画面に対してなら、0x000000~0xffffff以外の色を使ってもよい。 --裏画面は、背景やキャラクタなどを描いておいて、重ね合わせ処理をするときなどに使う。詳しいことは copyRct0() などを参照のこと。 -[01f以降] slctWin(int n) --描画関数がどの画面に対して描画を行うかを指定する。 openVWin() しないまま slctWin() して描画することもできて、その場合は表画面と同一サイズで blike が openVWin() する。 -[01f以降] copyRct0() -[01f以降] copyRct1()
(This host) = http://osask.net