Gポイントポイ活 Amazon Yahoo 楽天

無料ホームページ 楽天モバイル[UNLIMITが今なら1円] 海外格安航空券 海外旅行保険が無料!

log

2012.07.08 C++:樹木生成

ファイル 405-1.jpg

地形の動的生成の次はオブジェクトの自動生成だ!ということで樹木の自動生成を試して
みることにしました。とりあえず、樹木の生成で最もよく知られている手法としてL-システ
ムが有名なので、その手法について調べてみました。

今までは樹木の生成についてのアルゴリズムかと思ってましたがどうも形式文法という
アルゴリズムのようで、有限長の集合を文字列パターン+再帰処理によって生成する
というもののようです。なのでコッホ曲線やシェルピンスキーの3角形も表現でき、それ
こそ幾何系のオブジェクトならほとんど表現出来てしまいます。いやぁ、いいなこれ。

さっそく2Dで樹木生成を試してみました。…思いっきり再帰処理しているのがバレバレな
画ですね笑。実際は乱数を使用して不規則性を持たせるんだと思いますが、最初なので
とりあえずはこんなもんです。にしても我ながら、、シンプルすぎるなあ。

comment

たけなか 2012.07.08-01:11 Edit

ふと思ったけど、このアルゴリズムで生成したパターンを保持しておけば、
木を次第に成長させたりできるなと思った。それにデータ圧縮にもかなり
役立ちそうな感じ。それをやってるソフトやデモは少ないけど、なおさら
やる価値はありそうだ。