迷路にハマった!

最近、迷路にハマっている。特に迷路のアルゴリズムが面白い。何か、アルゴリズムを活用できる分野があると思うのだが。。。

ドット絵を迷路化してみた

迷路アルゴリズムの多くは、長方形の外枠で作られることが多い。

 

しかし、実際には、外枠が長方形である必要はない。

 

輪郭線でイラストを描くことだって可能。

 

そこで、ロボット(?)の形の外枠を作ってから、壁のばし法を実行してみた。

 

まず、輪郭線を書く。

 

f:id:sasatarokun:20141104095910p:plain

 

迷路作成用のグリッド(既に一マスごとに壁の位置が決定されている)の黒マスを結ぶようにして絵を描く。

 

そして、壁のばし法を実行。

 

f:id:sasatarokun:20141104100034p:plain

 

壁のばし法は、既に決定している壁(外枠含む)を起点として壁を分岐させ続ける手法。先端が既存の壁(正方形の黒マスは含まない)に当たらないようにして、壁を伸ばし続ける。

 

f:id:sasatarokun:20141104100253p:plain

すべての黒マスに壁が到達したら迷路は完成。

f:id:sasatarokun:20141104100302p:plain

今回の実験では、マスの数があまりに少ないので、大した感動もないが、この方法を使えば、複雑なドット絵を迷路化することも可能なはずである。