渦巻く幻燈

swift playgrouds で初めて書いたプログラム。

../../../_images/RDS-02-11.png

機能はランダムドット画像を少しだけ回転と拡大を加えた図を表示するだけ。

playgroudsは書き捨ての実験プログラムにはちょうど良い手軽さ。昔読んだけど試さなかったアルゴリズムの本のコードを色々と実験したら面白そうだ。

回転を大きくすると螺旋を認識できなくなる

同じランダムドット画像を2枚重ねて見ているような図。重ね方は矩形の真ん中を中心点にして、回転、拡大している。 そのため、プログラムコード自体にも、出力した画像データにも螺旋構造は存在しない。

../../../_images/RDS-00-11.png

回転角度:0 , 拡大率:1.1

回転はなし、拡大だけの場合は、「爆発している感」がある。

../../../_images/RDS-02-11.png

回転角度:2 , 拡大率:1.1

回転2度、拡大の場合は、「渦巻いてる感」が出てくる。

../../../_images/RDS-03-11.png

回転角度:3 , 拡大率:1.1

回転2度、拡大の場合は、「渦巻いてる感」が出てくるが、角度2と対して変わらないかな?

../../../_images/RDS-10-11.png

回転角度:10 , 拡大率:1.1

回転10度、拡大の場合は、「渦巻いてる感」が真ん中の方だに存在する。 真ん中の方がドットの間の間隔が狭いからかもしれない。 爆発している感じもなくなる。

../../../_images/RDS-20-11.png

回転角度:20 , 拡大率:1.1

回転20度、拡大の場合は、「渦巻いてる感」も、「爆発している感」もさっぱりなくなる。

図形とは認識できないランダムドットでも条件が加われば「フレーザーの渦巻き錯視」と同じような錯覚が生じているように見える。

参考とソースコード

プロジェクトファイル