aclib #18 - aclライブラリ入門(2)
(0) もくじ
(1) xorを使った模様(grd_xor)
#include <acl.c>
void aMain()
{
AWindow *win = aOpenWin(256, 256, "grd_xor", 1);
int x, y;
for (y = 0; y < 256; y++) {
for (x = 0; x < 256; x++)
aSetPix(win, x, y, (x ^ y) * 0x10101);
}
aWait(-1);
}
- これは以前rynaさんに教えてもらった模様です。こんな簡単なプログラムなのにきれいです。
- aSetPix(win, x, y, c)
- ウィンドウwinの座標(x, y)の画素の色をcに設定します。
(2) xorlines
#include <acl.c>
void aMain()
{
AWindow *w = aOpenWin(256, 256, "xorlines", 1);
int x;
aSetMode(w, AMODE_XOR);
for (x = 0; x < 256; x++) {
aDrawLine(w, x, 0, 255, 255, 0xffff00);
aDrawLine(w, 0, 0, x, 255, 0xffff00);
}
aWait(-1);
}
- これはKが子供の時から好きだった模様です。線を引くときにXOR演算をしながら上記プログラムのように線を引くだけで、こんな模様が出てきます。
- 昔はこんな感じでシンプルなプログラムからきれいな模様を出すものが多かった気がします。
- aSetMode(win, mod)
- 描画モードを設定します。AMODE_SET, AMODE_OR, AMODE_AND, AMODE_XORがあります。
- aDrawLine(win, x0, y0, x1, y1, col)
- 座標(x0, y0)から(x1, y1)へ線を引きます。色はcolになります。
つづく・・・
こめんと欄