「どこまで拡大しても滑らか」なのがInDesignやイラレで扱われるベクタ画像(パス)のよいところですが、
フラクタルとは「どこまで拡大してもガタガタ」な図形のことです。
ガタガタさがいくら拡大しても変化しないというか。
そういう真逆なものをあえてパスで書いてみようという話です。
自然界ではブラウン運動の軌跡とか、海岸線なんかがフラクタル的だと言われます。
一定の規則によって数学的に定義されたフラクタルは自己相似性(全体と部分が相似)があり、単純な規則からいろんな複雑な形ができて面白いのです。
ダウンロード
[
いんででフラクタル]
さてこちらのスクリプトでは、ある開いたパス(パスAとします)を選択して実行すると、パスA内のそれぞれのセグメント(線分)の位置に、『パスAを相似変形して、始点と終点がそのセグメントと一致するようにしたもの』を配置します。それらを接続して一つのパスとし、また同じことを繰り返します。
これを無限に繰り返せば、フラクタルになるか、もしくは発散することになるのですが、実際にはアンカーポイントが5万個を超える前に停止するようにしてます。
※全ての頂点がコーナーポイント(ハンドルが出てない頂点)のパスでしか動作しません。曲線使ってるパスはダメってことね。
※発散しないためには、すべてのセグメントの長さが、パスの始点と終点の距離より短いことが必要です。
使用例
・有名なコッホ曲線
・C曲線などと呼ばれてるやつ
・シェルピンスキーの三角形
・なんか
一つのつながったパスになってるので、テキストパスにして文章を流しこむこともできます。意味は無いですが。
このスクリプトではパスの相似変形に回転・拡縮・平行移動しか使ってませんが、この手のフラクタルはもう一個『反転』を加えることで、できる図形のバリエーションが増えます(
こんなのとか)。興味出た人(いないよね)はスクリプトいじって作ってみよう!
PR