[PR]
×
[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
プログラミング、3DCGとその他いろいろについて
[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
L-systemというアルゴリズムがあります。
これを使うと植物の形が描けます。
やってみましょう。
class Program { static void Main() { var text = "A"; System.Console.WriteLine(text); for (int i = 0; i < 10; i++) { var newText = ""; for (int textIndex = 0; textIndex < text.Length; textIndex++) { switch(text[textIndex]) { case 'A': newText += "AB"; break; case 'B': newText += "A"; break; } } text = newText; System.Console.WriteLine(text); } } }結構簡単なプログラムですね。
A AB ABA ABAAB ABAABABA ABAABABAABAAB ABAABABAABAABABAABABA ABAABABAABAABABAABABAABAABABAABAAB ABAABABAABAABABAABABAABAABABAABAABABAABABAABAABABAABABA ABAABABAABAABABAABABAABAABABAABAABABAABABAABAABABAABABAABAABABAABAABABAABABAABAABABAABAAB ABAABABAABAABABAABABAABAABABAABAABABAABABAABAABABAABABAABAABABAABAABABAABABAABAABABAABAABABAABABAABAABABAABABAABAABABAABAABABAABABAABAABABAABABA
さて……文字列が表示されました。
何でしょう?この結果は。
私たちは植物を描こうとしていたはずでしたが…?
実はこのプログラムはL-systemのエッセンスを実装しただけであって、見た目はダメです。
植物の形にするにはきちんと体裁を整えなければなりません。
では続きは次回。