2017年5月29日月曜日

フラクタル その1

しばらく、何も書いていませんでしたが、また何か書いてみようと思います。

最近は、"Processing"という、コンピュータプログラミングができるソフトを使って、お絵描きしたり、アニメーションしたりしています。だいぶ前に、黄金角の記事を書いたときに、このProcessingを使っています。

今回は、YouTubeで見た、フラクタルに関する動画について書いてみたいと思います。
"8.2: Fractal Recursion - The Nature of Code"
(ちなみに英語です)

「フラクタル」とは、図形の一部が元の図形の縮小されているようなもののことをいいます。ブロッコリーの枝分かれした部分を取ってその形を見ると、元のブロッコリーの縮小された形になっている、などがその例です。

今回見た動画では、

「ある半径の円を描き、その円の左端、右端、上端、それぞれを中心に半径を半分にして円を描き、それらの円の左端、右端、上端、それぞれを中心に…」

ということを繰り返すプログラムを解説していました。(実際の動画は「上端」ではなく「下端」です)

順を追って絵を描いてみると、「ある半径の円を描き、」
「その円の左端、右端、上端、それぞれを中心に半径を半分にして円を描き、」
 「それらの円の左端、右端、上端、それぞれを中心に…」
 そして、これを繰り返すと、このようになります。
 三角形が浮かび上がってきました。これは「シェルピンスキー」の三角形と呼ばれるものです。普通は直線で以下のように描きます。
円を描いていったら三角形ができるというのはおもしろいですね。「円の左端、右端、上端」の三ヶ所を繰り返し描いているからなのでしょうが、動画を最初見たときは「えぇっ!?」でした。

ちなみにこの動画は、Processingを使って自然界の法則等をコンピュータ内で実現してみるという、教材動画の一部です。もとは"The Nature of Code"という本があって,それを基に解説しています。この本の著者のDaniel Shiffmanさん、というかたが動画で解説しているのですが、なかなかおもしろいかたです。

このほかの動画についても、いずれ紹介したいと思います。

0 件のコメント:

コメントを投稿