πで綺麗に絵を書いているのを見て、素数をちょっと使ってみようと、ちょっとばかし時間があったからやってみた。ウラムの螺旋とかサックスの螺旋とか以外にも色々あるけど、ここでは三角形の配列を使ってみる。
line:1 1
line:2 2 3
line:3 4 5 6
line:4 7 8 9 10
line:5 11 12 13 14 15
………
こんな感じの3角形の配列を用意して、素数の所だけ塗りつぶす。これはウラムの螺旋とかと一緒の感じで。
line:1 1
line:2 2 3
line:3 4 5 6
line:4 7 8 9 10
line:5 11 12 13 14 15
………
こんな感じで素数の所だけ塗りつぶしていく。他はグレーにしているけど、素数じゃない所は何も塗りつぶさない。あとline:1は1だから無しで。プログラム的な流れは、一番左の1,2,4,7,11,16…は (n*n -n +2)/2だから、行番号(n)を上げていってその横幅(行数と同じ個数)にある素数を特定したら、その箇所を塗りつぶす。
結果はこんな感じ。oFでサクッと描いた。
生成される時の動画はこんな感じ。
あんまり規則性が見えなかったかも…スケールを変えると微妙に縦や斜めに線が見え始めるけど、うーん…って感じ。微妙に濃淡があるけど、これはキャプチャの限界で、スケールを変えるとちゃんと全部同じ濃さ&サイズになる。色をつけてみたら何か感触かわるかなぁ。まぁ、けど、何か面白かった。
一応環境としてはMacbook Air 11-ich, Mid 2011, Core i5 1.6GHz, Mem : 4Gbyte, OS X 10.8.5, openFrameworks 8.1を使って、22,685個の素数をポイントしている。