迷路を自動生成できるツール。
いつもどおり cygwin で遊ぶためのパッケージもつくってみた。
http://www.freeshells.ch/~fuddy/cygwin/release/libcoyotl/- http://fd0.x0.to/cygwin/release-2/libcoyotl/ (for 1.7)
インストールして、/usr/bin/test_maze.exe を実行すると、カレントディレクトリに png 形式のテスト画像が生成される。よって、libpng12 が必要になる。
% test_maze generating a 997-by-1001 maze writing maze image to maze.png (grid size 11) writing maze data to maze.png.maze reading maze data writing restored maze image to restored_maze.png done in 9.531 seconds
また、生成される画像はとてもでかいので注意した方が良い。
% ls -l maze.png maze.png.maze restored_maze.png -rw-r--r-- 1 fuddy なし 742829 Mar 8 12:01 maze.png -rw-r--r-- 1 fuddy なし 1998016 Mar 8 12:01 maze.png.maze -rw-r--r-- 1 fuddy なし 742829 Mar 8 12:01 restored_maze.png % file maze.png maze.png.maze restored_maze.png maze.png: PNG image data, 10989 x 11033, 1-bit grayscale, non-interlaced maze.png.maze: data restored_maze.png: PNG image data, 10989 x 11033, 1-bit grayscale, non-interlaced
テスト画像 (切り抜いたもの) は以下のような感じになる。
libcoyotl には /usr/bin/test_prng.exe というものもある。これはいろんな乱数生成アルゴリズムをテストするものらしい。おそらく、これらの乱数生成を私用して、上記の迷路を自動生成しているものと思われる。
% test_prng ALGORITHM TIMING (random numbers / second) mtwister = 12.76 (78400627 rn/sec) mwc1038 = 11.76 (85041245 rn/sec) kissrng = 17.57 (56911957 rn/sec) mwc256 = 13.01 (76893502 rn/sec) cmwc4096 = 10.37 (96478533 rn/sec)