- -pv
スレッドの閲覧状況:
現在、- がスレを見ています。
これまでに合計 - 表示されました。
※PC・スマホの表示回数をカウントしてます。
※24時間表示がないスレのPVはリセットされます。

L-Systemシミュレーションスレ

1名無しさん@おーぷん:2015/05/16(土)08:31:54 ID:E6a()
~東雲研究所~おーぷん2ちゃんねる分室
                                         .'::::::::::::::::::::::::::::::::::::::レj ::::::::::::::::::::::::::::::::::::::::::i
                                        |::::i:::ト、_:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::|
                                        |::::l:::|´\`::ヽヽ :::::::::::::::::::::::::::::::::::::::::::::::::::::::|
                                        人::l::ハ  \ルハ :::::::::::::::::::::::::::::::::::::::::::::::::::::|
           ,ィ   .  -- -  .                     ルハ, __ ``.Y :::::::::::::::::::::::::::::::::::::::::::::::::: |
        /└'´                                     }/⌒ヾ  |::::::::::::::::::::::::::::::::::::::::::::::::::::::|
      ,ィ´               \                   ノ   ////|::::::::::::::::::::::::::::::::::::::::::::::::::::::|
      7           ト、     .                 〈      .|::::::::::::::::::::::::::::::::::::::::::::::::::::::l
.       .'        .  i  リ∧ i    .                     丶  /ヽ !:::::::::::::::::::::::::::i::::::::::::::::i::::ル'
      |        l i! /  i 「`ヽ  i                   \ __ノ |::::::::::::::::i ::: ;イレ'ル イレ' ⌒ヽ
      {       . 斗 ル'   lレム i i l !                       |::ll::::::ル'j:イ            }
        !     | ! /テ笊   〃ハ !l i! }                       ルル'´             ノ  __
      !   r. ┤ル'{ il l ir!    |仆リ |ルレ'                      /     __ ∠.      {/´  __ `ヽ
      } 从 l| |  人ヒソ   ー'   ||                        〈    ./´: : : :_: : : : :\   .ノ /∨´ `ヽ
      !  人 l| |////   ___  /// リ   __     /´|             }\/: : : /´: : : ヽ: : : :\/| |H    }
      ノ '   7从 、 /´   Y  , イi| . ´: : : `ー<: : : j             /: : /!: : : : : : : : : : : :.ヽ: : : :| 从 乂ゝ._.ノ
.     /    /  > . ニ  ≦ルレ' 〈: : : : : : : : : : : : : : 7´ ̄ ̄ 7 、    ./: : /: |: : : : : : : : : : : : : :i: : : | 人
    /    /   \\〉‐く| >`ヽ _.允(●)、: : : : : : : :/     .i: : : :`Y⌒/: : /〈〉!: : : : : : : : : : : : : :|: : : | ̄ ̄ ̄ ̄ ̄ ̄
.   /    /  /´   \∨ .| 〉/´   L\ 丶. : : : : :i      |: : : : : !: : : : ≠': ||.: : : : : : : : : : : : : :!: : :.| ̄/´ ̄ ̄ ̄`ヽ
   /    /  /    _ヽVj./ /       .> 、: : : : : :|       |: : : : : !: : : /: : : :||: : : : : : : : : : : : : :.|: : :.| Y  /∨ ⌒ヽ
.  /    /  ∨   ´       {       i   ` ̄ ̄ .|       |: : : : : : : :/: : : : :||: : : : : : : : : : : : : :.|: : :.| l!  |H{    l}
 /    /  ∨           |        |'´ ̄  ̄ ̄ |_____|: : : : : : :/: : : : : :||: : : : : : : : : : : : : :.|: : :.|从 乂ゝ._.ノ
./    /   \             人      .|            \: : : : :|: : : : : : :リ : : : : : : : : : : : : : |: : :.|. 人      ノ
'    /       \          \____|                \: : !: : : : : :/: : : : : : : : : : : : : : :|: : :.|   `  ̄ ̄ ´

このスレはL-System(Lindenmayer system)を使って植物の成長シミュレーションなどを研究するスレです
2L-System厨 :2015/05/16(土)08:33:45 ID:E6a()
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::;  -──-  ::::::::::::::::::::::
:::::::::::::::::::_/(:::::::::::::::::::::::::::::::::::::::::::::::::::::/     八   `ヽ::::::::::::::::
:: :: :: :: :: >    ̄ `丶、:: :: :: :: :: :: :: :: ::′ _,.才/  `ト ._  ハ:: :: :: ::
: : : : : /   / l   }  ヘ: : : : : : : : : : : :|  /}/ ′   }八イ ト{: : : : :
. . . . .′ _,.才 /\`ト ._ ハ. . . . . . . . . . .| l ィ ┃   ┃ | l |. . . . . .
    |  {/l/レ′  ヾハノ  |         | l l| ┃   ┃ | l |
    l ,l | ┃   ┃| l ト{         | l l|         | l |
    l{| | ┃   ┃| l,}|        |从ト . _‐_ . イリ从
    |八ト .      . |/ |              〈 、∨ , 〉
    |   l : :≧示≦: : l |               l  }} }}  l
    |   l: : :∧{}∧ : : l |            l       l
    |   l : / `´ V: :l |               l       l
   んで、資料だけど...         そうですね

L-System
ttp://ja.wikipedia.org/wiki/L-system
毎度おなじみWikipedia

CEDEC 2008 - コンピュータが知性でコンテンツを自動生成--プロシージャル技術とは(前編)
プロシージャル技術による植物の生成(1)
ttp://news.mynavi.jp/articles/2008/10/08/cedec03/008.html
プロシージャル技術による植物の生成(2)
ttp://news.mynavi.jp/articles/2008/10/08/cedec03/009.html
日本語で一番まとまってて分かりやすい資料、これ読むだけでもいいかもしれない
↓の「The Algorithmic Beauty of Plants」の要約として読んでも良いです

The Algorithmic Beauty of Plants
ttp://algorithmicbotany.org/papers/#abop
ttp://algorithmicbotany.org/papers/abop/abop.pdf
ttp://algorithmicbotany.org/papers/abop/abop.lowquality.pdf
2番目と3番目の資料は内容は同じ、解像度が違います
詳しく勉強したい人向け、絵をパラパラ見るだけでも楽しい
3L-System厨 :2015/05/16(土)08:34:37 ID:E6a()
         ___
      ,.ィチ三三三三ニ-.,、
    ,ィ'州川三=/!アマミ、三ミt、         _
   .// / チアソ`/  V「l゙Vェ,,.l       /   \
   iミ,..,ィ,,,/ア,.-‐-、   '二ヽVミl!      ,'  え  |
    |三三ミ! { l圭i  .l圭! } lハj!      .|.   |  |
    |三三ミ!.,,,, マツ  .マツ,,{ミ!   っ   |.  |  |
    |三三ミ|''"  .__  "゙ lミ!   っ   .|.  |  |
   V三三ト、 (   ) ,..ィミ/  っ  匸   |   |
  c ヾヘヘヘl≧r‐-rzz=チン}レ゙  っ    ヽ  っ /
   ゚,..-=-、,ィ' <_,..-.ヽ!、´           \__/
  ,.'::;ィ=y<ヾt、_ヽ''"゙'/ `it、
  !:::H./ .、ヽ.ヾミzァ"Yヽ=チ'ノヽ
  、::ヾ!.  ヽ  ̄/.、__j、i_:}  i.ハ
  テニl!   l:  l,、::::ハ::;ム二コi.ム
┌──────────────────────────┐
│L-Systemを使うと単純な命令から再帰的に=世代を経る毎に .|
│複雑なものを作ることが出来るんです               .|
│でも、単純といっても決まりごとはあるわけで...         .|
│                                      .|
│幾つかサンプルを示しながら何が出来るか説明していく予定 .|
│です                                   .|
└──────────────────────────┘
4L-System厨 :2015/05/16(土)08:36:35 ID:E6a()
      /        ` ヽ、
      (V        ∧      \
     /       ハ / ヽ ハ    ヽ
      ⌒      ⌒///  ヽi⌒ヽ   ヽ
      /     /|/__レ    V__ヽ }    '
      |    //rァヽ    'rァ 、V  ハ }
      |   | | { {:r´:}   {:r´:} l l  ハ
      |   / ! !  弋ソ    弋ソ  レ イ
      |   | |""         "" lレ !
      |  `'| |、  /  ̄ ̄ ヽ   ノj |
      |   V ` ゝ__ ノィ´ V  ′
      |     /〈 \/ヽ\    l
     l   //  ∨、:.:.∧〉 l\ ,′
     |   /   ̄7 ∨:.:.∨ <  ヽl
┌──────────────────────────┐
│なんかBlenderでL-Systemのプラグインとか出ててリアルな  .|
│CGを作りたいって人も増えてきた気がするからプラグインの  .|
│裏側で何やってんの?ってことでスレを立てました         .|
│                                      .|
│L-Systemのツールで面白いもの作るっていう動機でも良いし .|
│ツールによってはDXFファイル吐いてくれるから取り込み    .|
│ファイル作るのにも使えるかもしれない              .|
│                                     .|
│画像中心になるけど                         .|
│おーぷん2ちゃんは画像貼れるってさとるも逝ってたし     .|
│ちょうどいい気がする                         .|
└──────────────────────────┘
5L-System厨 :2015/05/16(土)08:41:35 ID:u6Z
  ,..-―-、
  i  .ルハ、 }
  | l ゚ ヮ゚ノ!  サンプル1 第2世代が...
  |__lノヌ7ヽ|
  ノ_zュ__}





6L-System厨 :2015/05/16(土)08:42:34 ID:u6Z
  ,..-―-、
  i  .ルハ、 }
  | l_^~゚ノ! プププ
  |__l /)ヘ| サンプル1 第5世代でこうなるけど
  ノ___}




7L-System厨 :2015/05/16(土)08:43:46 ID:u6Z
  ,..-―-、
  {  ノiハ、 }
  lw! ゚ ヮ゚ノj    サンプル2 第2世代が...
 8Uヾネノ]lつ
  <王王ハ
   しU




8L-System厨 :2015/05/16(土)08:44:48 ID:u6Z
  ,..-―-、
  {  ノiハ、 }
  lw! >__<ノj   サンプル2 第7世代でこうなります
 ⊂}8- ]lコ= ・ ・ ・ ・ ・ ・
  <王王ハ
   しU




9L-System厨 :2015/05/19(火)22:38:55 ID:nJ0
  ,..-―-、
  i  .ルハ、 }
  | l ゚ ヮ゚ノ!  サンプル1 をL-Systemで書くと
  |__lノヌ7ヽ|
  ノ_zュ__}

#start
# --- L-System Parser/Mutator --- Lj Lapre ----------------------------------
5 # recursion depth 2-5
18 # angle
20 # thickness as % of length
#---------------------------------------- axioms
<(135)P
# ---------------------------------------- rules
P=c(3)I+[P+H]-->>[--L]I[++L]-[PH]++PH
I=FS[>>&&L][>>^^L]FS
S=SFS
L=[c(1){+f-ff-f+|+f-ff-f}]
H=[&&&Qc(9)>W>>>>W>>>>W>>>>W>>>>W]
Q=FF
W=[c(10)^F][{&&&&-f+f|-f+f}]
@
#end
10L-System厨 :2015/05/19(火)22:41:59 ID:nJ0
  ,..-―-、
  {  ノiハ、 }
  lw! ゚ ヮ゚ノj    サンプル2 をL-Systemで書くと
 8Uヾネノ]lつ
  <王王ハ
   しU

#start
# --- L-System Parser/Mutator --- Lj Lapre ----------------------------------
7 # recursion
20 # angle
15 # thickness
#---------------------------------------- axioms
c(3)b>(60)b>(60)b>(60)b>(60)b>(60)b # the whole thing
# ---------------------------------------- rules
b=[&(30)A]
A=~(7)$t(.1)F[+(40)C][-(40)C]!(.95)~(7)t(.1)FA
C=~(10)$tF[+(60)L][-(60)L]C
L=[~(15)c(1){-f+f+f-|-f+f}]
F='(1.3)F'(.77)
f='(1.3)f'(.77)
#~=_ # uncomment to remove random efx
@
#end
11L-System厨 :2015/05/19(火)22:54:43 ID:nJ0
         ____
    . -  ̄          、
  /               ヽ
  /        /|  / ヽ    ` 、
 /      /-―-| /   ヽ―    ,
|     / _, -- 、'    _,--、   l
|  _| ノ r'::::::ヽ ヽ   r'::::ヽヽ  り
| / .| |  l::::::::::l     |:::::::::l  |  /
| l | |  ゝ::::::ノ     ヽ::::ノ  {.ノ
| \| |"            " 〉|
|   | |. ν  ------- 、    / |
|    ゝ  (       l   / |
|      /` ー ー――      |
|     /ゝ__ 人_ヽ      |
|    /        ヽ      |
|    /     O   ヽ      |
|   /          ヽ    |
|   /      O    ヽ    |
┌──────────────────────────┐
│うん、こんなのいきなり見せられても意味分からないけど~  .|
│幾つかの文字に線を引いたり、X、Y、Zそれぞれの軸で回転 .|
│させたりといった割り当てがあるのでまとめて説明する予定   .|
│                                      .|
│他にも植物を作るためには枝、葉、花などの各パーツで    .|
│試行してから作るほうが作り易いとか方法論も          .|
│先ずは、その前に"L-System"のツールを紹介します     .|
└──────────────────────────┘
12L-System厨 :2015/05/23(土)07:43:08 ID:rHN
            /        `丶、
          」∨               ヽ
          7                 '.
          /        ノ| ∧ `ト   N|   っ
.          /N      イ/ |/  ∨| ∧  |  っ
.        〃 Y⌒i  Ⅳ∩    ∩  }/V    -=ニ二三三三三
       /   {{{ |  | ∪    ∪ {{-=ニ三/ ̄ ̄`'く>三三三
         /ゝ _|  | ''       '' 人.三三|(‐~~‐)| |三三三
      /  厶-=ニ | :八‐-(_:::::::⌒)<∧ノ三三| ー--‐' |_|三三三
    -=ニ二三三三三\_,,,フ三三三三三三三三|  <・ )  「 三三三
二三三三三三三三三三三三三三三三三三ニ圦  {__>,,ノ三三三
三三三三三三三三三三三三三三三三三三三ニ≧===≦三三三
┌──────────────────────────┐
│L-Systemで遊べるアプリケーション紹介~            .|
│1.L-System 4    Windows対応                 .|
│ttp://www.oocities.org/tperz/L4Home.htm             .|
│ttp://www.oocities.org/tperz/L4Downloads.htm         .|
│オリジナルサイトは既に消滅していてミラーサイトだけ残ってる.|
│すごく古いソフトなので自己責任でお願いしますけど      .|
│L-Systemアプリの中では分かり易い方かな?          .|
│                                      .|
>>5->>8 はこれで作ってます                    .|
│[File]メニュー→[New]→エディタ起動するので          .|
>>9>>10の#start~#endをコピペ→[Generate]ボタン押下で.|
>>6>>8が描かれます                       .|
│jpeg、bmp、dxf形式で出力可能                   .|
│                                      .|
│Helpが見れないときは自分のOSと32bitか64bitかを調べて   .|
│ttps://support.microsoft.com/en-us/kb/917607/ja       .|
│適切なWinHlp32.exeをインストールすればいいかもしれない  .|
└──────────────────────────┘
13L-System厨 :2015/05/23(土)07:46:32 ID:rHN
              /:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::ヽ         ┼
             /::::::::::::::::::::::::::::::::::::::::::::::::::∧::::::::::::::.、      ×*ⅹ
             .|:::::::::::::::::::::::::::::::::/i::::::/|::::::i ヽ::::::::::::::::i     
             |:::::::::::::::::::::::::::::::/./:/ |:::/  ヽ:::|:::::::::::i ┼ *ⅹ
             |::::::::::::::::::::::::////─´::/ N .!::i::::::|:::::|
             |::::::::::::::::::/´==ヽ  .|/   \∧:::|::::::i
       ,/ ̄ ̄ |:::::::::::::::::::| / /:::::}     =ヽ  i::::!::::::.|
      / _  /|:::::::::::::::::::|i iv::℃:     /:::::} | |::!:::::::|     *ⅹ
     /  ///  |:::::::::::::::::::| 弋zソ     v::℃ / /i/::::∧i
    |  /::::/ /   i:::::::::::::::::::| \\\\ 弋zソ  i:::N::|v  
    |  |:::::| .i    |N:::::ヽ::::::|´`ヽ、     \\/::::::i::|
    ヽ ヘ::::y ´ ̄─ 、∧:\:::|!    ` ヽ    丿:::::i::i
     >  y   ̄`ヽ、 `ヽ `∨`::...._  ノ_ <:::::::::::i:i   ×*
    〉   /      ヽ   \  ヽ_ ノ ̄  / `ヽN∨N
  / \/        ヽ i  \ _ヽ /  /   ヽ
 /  /::::|         ヽ |::   | | ∨ i /   /  |
┌──────────────────────────┐
│2.Lparser v2.1    Windows対応                 .|
│ttp://laurenslapre.nl/index.html                   .|
│ttp://laurenslapre.nl/lapre_004.htm                .|
│もともとDOSプログラムだったものがパワーアップ        .|
│インストール不要だけど出来た作品を見るにはVRMLファイル .|
│(wrl拡張子)が見られる環境が必要です             .|
│例えば FreeWRL VRML/X3D browser              .|
│ttp://sourceforge.net/projects/freewrl/             .|
│                                      .|
│ダウンロードしたlparser.zipを解凍後のlparserフォルダには  .|
│サンプルのlsファイルとその結果に相当するjpgファイル    .|
│本体のLparser2.exeファイルなどが入っています        .|
│lsファイルをコピーして"input.ls"に名前を変更、Lparser2.exe .|
│をダブルクリックすると"output.wrl"ファイルが作られます   .|
│                                      .|
│output.wrlがBlenderにインポートできることを確認しました↓  .|
└──────────────────────────┘




14L-System厨 :2015/05/23(土)08:18:01 ID:rHN
           /:::::\___/:::::::∨^l
           ./:::::::::::::::::::::::::::::::::::::::::|. l / ̄7
          |::::::/⌒ヽ:::::::::/⌒ヽ::::| ム'   ./
          |:::::l .┃ !:::::::l .┃ l:::レ'     ./
           /::::::', ┃ /::::::::', ┃ /::::l    /
        /::::::::::`ー.'::::::::::::`ー.':::::::l   /
        \:::::::::::::::::::::::::::::::::::::::::,イ__/
            }` ー――――一 ´ {
            \   \  ´   /|
              |\      У:::::l
              |::::::\   /:::::::::::l
              |::::::::::::\/::::::::::::::::|
              |::::::::::i::::::::::i:::::::::::::::::l
              |::::::::::|::::::::::|:::::::::::::::::|
           ./⌒l::::::::|::::::::::|::::::::::::l⌒ヽ
         |:::::::|::::::::|::::::::::|::::::::::::|::::::::|
┌──────────────────────────┐
│3.LSystem3D    Linux対応/他のUnix系でもいける?    .|
│ttp://sourceforge.net/projects/lsystem3d/           .|
│取り合えず描画して楽しむ程度は出来る             .|
│描画はOpenGL、インプット/アウトプットファイル形式はxml   .|
│のため OpenGL、FOX toolkit、libxml++ ライブラリが必要    .|
│コンパイルエラーでこけたw                     .|
│                                      .|
│lsystem3d-0.2.1.tar.gz 解凍後 lsystem3d-0.2.1/src/ フォルダ .|
│内の ruleset.cpp で #include <stdlib.h> を追加          .|
│これで、./configure、make、make install するなり checkinstall .|
│で rpm や deb にするなりでインストール可能           .|
│インストール後コマンドラインから lsystem3d で起動       .|
│                                      .|
│サンプルとして lsystem3d-0.2.1/src/lsystem.xml が用意され .|
│ているので読み込ませて描画後ズームアウトすると↓になる  .|
└──────────────────────────┘




15L-System厨 :2015/05/23(土)08:43:49 ID:rHN
          /l, -‐. ´: : : : : : : :  ̄: : ..`. . 、
      _i : :: : : : : : : : : : : : : : : : : : : : : : ヽ
    ∠ : : : : : : : : : : : : : ; : : : ハ: : : :.: : : : : .ヽ
     /: : : : : : : : : : : :':/l : : / 丶 : : ト; : : : : :丶
      /: :/: :.' : : : : /: .:/ !: ./  `.:、: l !: : : : : : `、
    i: :, : : ,' : : : -A-/-‐ヒ/´    `乂_l:_!_: : 、: i
    l: : : : : : : ;ィ.:/ ,レ〒=、     ,=〒=、ハ: ,.: .:. :!
    │: : : : !: :i レ,イ,.::::`-'!     l.,:::`‐'lヽ V : : : l
    l: .:/ニi: :l  i |ハ.::::.ハ}    {ハ:::::.ハ! }/: : .: : l
    |: :{  (l: :l  ` ヽ.二.ノ    ヽ.二.ノ ´i: : .:/V
    |: :ヽ、 !: l   ``           ``│iV    はかせにはまだちょっと早いかもしれない
    |: : : : ‐!: l、      __   __      l: l
    |: : : : : :V: :\    {   ̄ ヽ::::}   ノ:/
    |: : : : : : : : :: : `> ゝ、____)/ .-‐.´:V:l
    |: : : : : : : : : ;イ l ` フ=く_}ヽ: : : : : : :.!
    |: : : : :. :: / |  ヽ/!:::::::l l lヽ : : : : l
    | : : : : /  │  ヽ 〉:::〈/  ! ヽ: : : l
┌──────────────────────────┐
│4.L-Studio/vlab                            .|
│ttp://algorithmicbotany.org/virtual_laboratory/          .|
│Windows版のL-StudioとLinux/Mac版のvlabがあります     .|
│「The Algorithmic Beauty of Plants」書いてる研究室製の    .|
│ソフトウェアなのでこの本に書いてある内容ほとんど出来る  .|
│かもしれないけど~機能が多彩すぎて全然使いこなしてません.|
│                                      .|
│旧版のマニュアルなど                        .|
│ttp://algorithmicbotany.org/lstudio/                .|
│ttp://algorithmicbotany.org/lstudio/whatis.html          .|
└──────────────────────────┘
16名無しさん@おーぷん :2015/05/23(土)08:57:06 ID:49v
G = {V, S, ω, P}
この文法?楽しいな
色々応用が利きそう
17L-System厨 :2015/05/23(土)09:19:44 ID:rHN
                      -――-
                    ´        \
                   /           ∨}
                         /|/| │      〈
                    N イ⌒ |/l人      |
.        /⌒\           |八__,    ∨     |
      | ヽ. l\   r m、 {''    `ー'│∧    |
      | : :} |   二二二ニニニマニ{)    '' |厶ィ:  │
      | :./ j/^7 /L片{= Y≧=‐r ァ≦_〔_    |
       、_/  (((⊂ニ)≧r:i  |`'┴'´   `ヽ  |
                 ̄ー}ー'ー|ノ  |        '  |
               \  |   j           {  |
                 \>rく__,,,...∠    |/│
                     |          V八
                     |           ∨/)
                     |           〈
                     |            :、
                     |             :、
                     |              :、
┌──────────────────────────┐
>>16 単純なルールから複雑なものを作るというコンセプトで .|
│作曲や道路網作成なんかの研究があります           .|
│他にも色々考えられるかもしれないね               .|
└──────────────────────────┘
アルゴリズム作曲法
ttp://ja.wikipedia.org/wiki/アルゴリズム作曲法
仮想都市のための L-system による道路網生成手法の検討
ttp://ci.nii.ac.jp/naid/110002781228
右の論文ぽい画像クリックでpdfの論文が読めるよ
18L-System厨 :2015/05/23(土)09:34:45 ID:rHN
           .  - ── -  .
          /              ` .ノ}
.      . '               ト、
       /      /   ∧. ∧      Vハ
     '   / . 斗ト /  ∨ ,ィ十 、   Y
.     i  / /レ__レ'    ∨ _ハ! ハ     l
.     |   |i /〃云k    .ィ云`ヾリ     |
     从 iル' ! |l匕l|    |l匕l| }l| ト、 |
.     人ハ!  .t仆ソ    t仆ソ ノ | | i. !
      |N|""""          "" | レ'  !
      | 〈     「 ̄ ̄ }    | |   |
      | i〕ト .   ー‐ ' .   イl| |   |
      | li i i  _∧ ̄ ノ^ト、 l! ル'    !
      | ll l /〈   X´ リ ト、    l
      | ll/|_ ∨}__ ∨  .| \   |
      /   / V ∨ ─┘  ヽ  リ
     /  i |  \.  ∨/  >   i | ∨
┌──────────────────────────┐
│L-System 4 と Lparser v2.1 で使う記号は互換性があるので .|
│L-System 4 で大体の形を掴んで Lparser v2.1 でBlender   .|
│用ファイルを作るなんて使い方がいいのかな?         .|
│Lparser v2.1 だけでもいい気もするけど~            .|
│                                      .|
│Lparser v2.1 はぶっちゃけテキストファイル(lsファイル)から  .|
│テキストファイル(wrlファイル)作成するだけだから~      .|
│wineインストールしたLinuxでも動きそうな気がするしね~    .|
│                                      .|
│次回は記号の説明と肩慣らしの2次元フラクタル画像作成です.|
└──────────────────────────┘
19L-System厨 :2015/05/30(土)21:18:59 ID:MPt
  ,..-―-、
  i  .ルハ、 }  L-Systemの記号について
  | l ゚ c゚ ノ! L-System 4 と Lparser v2.1 を中心に紹介
  |__j´丈 d| 
  ソ_zュ__} 線分からだけど

F:線分を引きます
Z:Fの半分の線分を引きます
f:線分は引かないけどFと同じ分移動
z:fの半分の長さの移動
20L-System厨 :2015/05/30(土)21:24:55 ID:MPt
  ,..-―-、
  i  .ルハ、 }
  | l ゚ ヮ゚ノ! 次は角度
  |__lノヌ7ヽ| タートルの頭を指定の角度だけ動かします
  ノ_zュ__} 

+:xy面に対し左へ回転=タートルの頭を原点としたときz軸周りに左へ回転
-:xy面に対し右へ回転=タートルの頭を原点としたときz軸周りに右へ回転
&:zx面に対し左へ回転=タートルの頭を原点としたときy軸周りに左へ回転
^:zx面に対し右へ回転=タートルの頭を原点としたときy軸周りに右へ回転
<:yz面に対し左へ回転=タートルの頭を原点としたときx軸周りに左へ回転
 他のソフトでは"\"
>:yz面に対し右へ回転=タートルの頭を原点としたときx軸周りに右へ回転
 他のソフトでは"/"
t:&と同じ?

以上の記号は後ろに(x)を付けられます
xに角度を指定できます

|:xy面に対し180°反転
%:yz面に対し180°反転
$:忘れたw
~:同じく忘れたw
21L-System厨 :2015/05/30(土)21:26:26 ID:MPt
  ,..-―-、
  {  ノiハ、 }
  lw! ゚ ヮ゚ノj   枝分かれ、花や葉を作る時に使う記号です
 8Uヾネノ]lつ
  <王王ハ
   しU

[:プッシュ、枝分かれ開始
]:ポップ、枝分かれ終了  [の位置まで戻ります
{:ポリゴン描画開始
}:ポリゴン描画終了  f や z と組み合わせたりします
22L-System厨 :2015/05/30(土)21:28:06 ID:MPt
  ,..-―-、
  {  ノiハ、 } 角度や、線分の長さ太さを少しずつ変えます
  lw! >__<ノj
 ⊂}8- ]lコ= ・ ・ ・ ・ ・ ・
  <王王ハ
   しU

":線分の長さを1.1倍する
':線分の長さを0.9倍する
;:角度を1.1倍する
::角度を0.9倍する
?:線分の太さを1.4倍する
!:線分の太さを0.7倍する

以上の記号は後ろに(x)を付けてxで具体的な値を指定可能
23L-System厨 :2015/05/30(土)21:29:06 ID:MPt
  ,..-―-、
  i  .ルハ、 }
  | l_^~゚ノ! プププ
  |__l /)ヘ| 残りだよ
  ノ___}

c:色を変化させる
c(x):xに番号を指定して色指定する
@:記述終わり L-System 4 のみで有効
#:コメント

今までの記号以外のアルファベットはただの置換規則ということになります
24L-System厨 :2015/05/30(土)21:31:37 ID:MPt
                -─‐ 厶 }}、
     _ -- ´        `ヽヘ
     {{`7     |    \     ∧
     ∨ '/ /│∧ { ⌒\ リ r-‐-‐、
     ,'   /⌒|/  \x‐=ミ∨〈/ / /,ハ_
      | i i/x=ミ.    rしハ }!| ゝつく ノ∧  はかせだにゃん
     _| i | i{ {しヘ   V_ソ | |ハ  ̄   '、
  _r'「{∨|i∧  Vソ     '' | |ノハ___ノヘ
  {_{└と 从 ハ ''       ,   |   |'.    ∧
  | `┴'' | |i八    ー   イ|/ー¬ヘ     -ヘ
  l.     | |\|` ーzr‐≦/ │    |\
  ト-―  i_L. イ⌒´/ ∨:::∨ 」           }
       人     〉  〉〈   >       __ノ
  {     \ ∨  \ ∨ /     ア「
   \,,____、|      }         /|│      /⌒)
┌────────────────────────┐
│それでは、L-Systemで色々作っていきましょう!      .|
│先ずは初期値の説明から                   .|
│1.何世代目か=recursion                    .|
│三次元空間にタートルが線を引いていくので        .|
│2.x、y、z軸それぞれに対する角度=angle           |
│3.線分の太さ=thickness                    .|
│4.初期状態=axiom                        .|
│これらの設定と置換規則=ruleでスタートだよ        .|
└────────────────────────┘
25L-System厨 :2015/05/30(土)23:46:28 ID:HTK
      //,--─ ─  丶 、
     / ': : : : : : : : : : : : : : : 丶
   ∠´: : : : : : : : : : : : ,、: : : : : : : : ヽ
 /__: : : : : : : : : : : : : : : !丶: : : : : : : : ヽ
 ´/: : : : : : : : : : : : ,イ/  ヽλ: : ,: : : : ヽ
 /: : : : : : : : : : : : ノ /   'ヽ!ヽ: !、,: : : :!
 !: : : : : : : : _ヘフ─,/    ソ`-、: 、: : : : !
 l: : : : : ,: : : /:ノ __       _ ヘ: : :,、: !
 l: : : : : ,!: ! ,,;"  ゙`、   ,,:''  ゙`、 ! /`ノ
 l: : ,, ' !: ! ''    `   ''     ` ノ
 l  ! τ !: ! ,,,,,          ;;;;;;`,
 !: : : ゝ、!: !'''''    ,、_    ,、    ノ
...!: : : : : `ヘ! >、_/^''^' ` ヾ/´ `'`ヽ´
..!: : : : : : : ,'`i ´ ̄ ̄ ̄ ̄`!´ ̄ ̄ ̄`、
ノ: : : : : : /  !        !      !
!: : : : : ノ   !       .!      !
┌────────────────────────┐
│分かりやすい所からコッホ曲線とかいいかもしれない   .|
│ttp://ja.wikipedia.org/wiki/コッホ曲線             .|
│                                    .|
│recursion 1-6     #今回は1世代から6世代       .|
│angle 60        #角度60°                |
│thickness 1      #太さは1                 .|
│axiom F        #初期状態は線分のみ        .|
│rule F=F+F--F+F  #変換規則で第一世代を描くと↓   .|
└────────────────────────┘




26L-System厨 :2015/05/30(土)23:53:50 ID:HTK
         - ── -
  -‐ァ'´         ` 、
. / /               ヽ
.′/      /! ∧ ト、 、  ヘ
| i     / / j /  ! j ! }   ',
| l!    / / /イ  |/ j八 }  }
| 八   /}/ N      N }八乂
|  Y^Y|  |:|       |:|  ハノ
|  {( ||  U      U  {ノ
|   乂||x:x           x:x〉
|  | ||ト.丶. _ ノ   ,.ィ7
|   jl<{ {` マニニフ ´}ト、
|  /   > \/{ }V <   \
┌────────────────────────┐
│第二世代になると...第一世代のFがそれぞれ      .|
│F=F+F--F+F に置き換わるので~              .|
│第一世代:F+F--F+F                      .|
│が                                 .|
│第二世代:F+F--F+F+F+F--F+F--F+F--F+F+F+F--F+F .|
│になります↓                           .|
└────────────────────────┘




27L-System厨 :2015/05/31(日)00:17:36 ID:rMM
      /└──┐
      \┌──┘
        -─…─-
   /レ ´: : : : : : : : : : : : : :\
   ノ ′: : : : : : : :ト、: :、 : : : : : ヽ
 ∠ : : : : : : ; 斗 / ', 」_V : : : : ハ
  |: : : : : :7j/}/  V  }∧: : : : :}
  |: : : : :V:匕ハヽ  匕ハヽハ : : ハ!
  |: : :ハ { {、::r} }  {、::r} } |∧/
  |: : {`||ヽツ     ヽツ  | .ノ
  |: :弋||"u         " jイ|
  |: : : :|/`ト ⊂ニニつ  <:リ:|
  |: : : : : : ; イ^ヽ フ^ヽ : : : : |
  | : : : /  廴/\_ノ \: : :!
  | : : /      o      ヽ |
  | : /   /⌒Y  /⌒Y   ∧
  |/  | 〉  ⌒  〈 |  ヘ
┌──────────────────────┐
│第六世代になると...もう書けないかもしれない   .|
│このコッホ曲線はテキストとかで良く見る形に     .|
│なってきた気がするけど、どうかな?          .|
│                                .|
│こんな感じでL-Systemはフラクタル図形もかけます .|
│植物の枝分かれもフラクタルなんだよね       .|
│フラクタル次元忘れたけどw               .|
└──────────────────────┘
ttp://terra.sgu.ac.jp/pclecture/lec/Lec009_2.html
↑には植物の枝分かれのフラクタル次元約1.5とあります?




28L-System厨 :2015/05/31(日)00:38:35 ID:rMM
なのだにゃん!

  /ト.\   _   /|:|
  |:| >:::´:::::::::::`:::< |:|
  |/:::::::::::::::::::::::::::::::: ヾ{                -─ 、
  /:::::::}::八::::ト:_」:::::::::::::::::',               /:::::::::::::ノ
. {::::::V‐ト ヽ{´Vヽハ::::::::::::}   _             .:::::::/ ̄
  Ⅵ::{Y7ハ  ´7ハ |:::::::::::レ← 、 ヽ.           |:::::::|
   |:::} 弋ノ  弋ノ !:::::::Y ,ィ'⌒ヽヾハ        _|:::::::|__
   |公゙.  、  , ゙ 人:::::ハ V廴丿 ,レo     r≦ rヘ:::::::マニ⊃≧
   ∨V{/≧=- ァ=ミ∨Vヘ _/∠ニヽ  {ヘ三ヲマ三ヲヘヲ}
.         Y⌒丶 ` ̄´ //,ィ'⌒ヾハ  、 ______ ノ
         |     ヽ   ゝ' { V廴 丿}j     |:::::::|
         |     |      ヽ __ ノ′    |:::::::|
         |     |         \       ;:::::::;
         |     |          \       /::::::;′
         |     |、        x介x __ /:::::: ′
         |     |ハ       ィ、/ >‐/::::::::/
         |     ∨}    ィ´ _」/ヽ/_/-‐ァ´
         |     } L ィ´_」´  ! /,//,/
         |ー──1.L_ 「 」 -‐ヘ> ′/´
         ト、__,ノ l  「 」 z‐ァ'  /
          }   | `7⌒´ /   /
            'ヘ辿リ  /    /   /
┌─────────────────────┐
│ちなみに                         .|
│axiom F--F--F     #初期状態は正三角形   .|
│にするとコッホ雪片になります             .|
└─────────────────────┘




29L-System厨 :2015/05/31(日)01:25:43 ID:rMM
                                  
                    .  ´  ̄ `   .               | j i/〉、
               /:::::::: /!::ト、::::::::::::::\              |∩  /
                  /::::: ;ィナ/ |::lxト、‐ 、:::::::::: ヽ          |j ) ノ
             イi:l::ル笊 人l ノ笊ハi:::::::::::::: ヽ       /`V  イ
             从i:| i.r' li  l.r' lト |::::::::::::::::. ヽ  /: \   Xノ
              /:::l:| |匕リ   l匕リ .|:::li::l::ヽ::::ハ/: : : : : :\/
   rf「ト、        /:::::l〈""     _ "" |:::li::|ルハ//: : : : : : : :/
   |   i  ___r‐ルル> .「  ノ .イレハj: リ/: : : : : : : :/
 〈.ヽ/´ ̄/: : : : : : :| l|  |l |〈 {_て .フ´  /::/: : : : : : : : /
  ーl   l: : : : : : : :| l|  |l |トト、 xへ  /: : : : : : :: : :/
   人_人: : : : : : :! l|__|l lハ: ≧≠≦=虫: : : : : :イ
       ̄ ̄ ̄ ̄〈∧___|l |7∧: : : : : : : : : : : : : : : : ト、
             く\∧fi|l // ∧: : : : : : : : : : : : : : : |: \ _
            「二\ ∧./ /  ∧: : : : : : : : : : : : : : : : : : ヽ: : `ヽ
          [二.イ\/ /   ∧: : : : : : : : : : : : : : : : : : i: : : : :l
            {レ'       ∧: :┌ ‐:‐:‐:‐へ、 : : : : : : : : :.|
              \.         |: : :!: : : : : : : : : \: : : : : : : : l
              \      |: :.ノ: : : : : : : : : : : i : : : : : : :リ
                    \ ____人└:‐:‐:‐:‐:‐:‐:‐::┘: : : : : :/
                        /\____: : : : : : :_____.: :イ
                         /::::::::::::::::// ̄ ̄「:::::::::::::::::l|
                    /:::::::::::::::://     .|::::::::::::::::::l|
                      /:::::::::::::::://      |::::::::::::::::::l|
                   /::::::::::::::::://      |::::::::::::::::::l|
                      /:::::::::::::::::://      |::::::::::::::::::l|
┌────────────────────────┐
│もう一つ                              .|
│ttp://ja.wikipedia.org/wiki/ドラゴン曲線            .|
│                                   .|
│recursion 12      #今回は12世代            .|
│angle 90        #角度90°                |
│thickness 1      #太さは1                 .|
│axiom FX       #初期状態は線分           .|
│rule1 X=X+YF    #変換規則1               .|
│rule2 Y=FX-Y    #変換規則2               .|
│                                   .|
│他にも色々描けるので試してみてください          .|
└────────────────────────┘




30L-System厨 :2015/05/31(日)01:31:36 ID:rMM
          ___               が   も
    ,ィ ,..-‐''" ̄   、 ` ヽ、
   / ´   , ./i ,' ∨ 、  \           ま   う
  ,ィ''゙,    ,.'i-/、l .,'  ∨,-、i.  ム
 ´7"   ; /,.レ'-、l/  ´V__ lV.  ム         ん   `
 //    //,ィチテt   'ィ=t、ヽl;; l. }
.// ,..-i | l !三Zミ!   i三Z} .l ! ハリ   コ    で
'  :l '| lxx. ゞニン    ゙ミZソ  lY:l.  /  ケ
   :、 .| |    __       xxVリ /  )      き
    `| |  /   ゙゙̄''''ーtォ   〉 ,;  (   /
   ,;;ハ/ヽ._l       リ  /iィ゙:l  ノ /    な
   ;','::l.::;.ィ゙' ー-..._,,.-―'''ア''¨゙'ヽ、/__
   .;.;',ィ'゙.:.:l  `'<Lr゙"/ f゙rョtヽ V__/       い
  ::;ィ゙-、: :、__,. ヽ/  ゝ二ノ リ:ム
 ::/.:.:.:  ヽ  :.L,,:'         /:.、_}        !!!
.::/.:.:.:   :゙  ,.'      r、,..'、_ハ_ノ
/.:.:.:    /;;:.,イ.:.:     rfヽヽ!,、.ム.
:.:.:.:   .;';;;:/.:././ ,    rヽヽ/ ヽム
:.:.:.   ,ィ{;;/.:./7"{_{ノ :U.:ヽ. /   /ヾt、
:.:.:  ´''"゙ー=ミ,し、fヽノ.:.U::l:V.:.:.  ,.'   ヾ!
:.:.:.:.      ゙7¨¨''ーr<j_liヽ.:./    /
:.:.:.:.:.:.:..    ,'    :!. ー'、 `i:、:.:.:./
、__:.:.:.:.:.:.:.:.:.:.:.:l:.:.:.:.:.:../  ‐<ハ ''''>`¨
┌──────────────────────┐
│次回からは [ ] や { } も使って二次元や三次元の  .|
│植物を作成していきます ようやくだねw        .|
└──────────────────────┘
31L-System厨 :2015/05/31(日)11:03:34 ID:CJb
  ,..-―-、
  {  ノiハ、 }
  lw! ゚ ヮ゚ノj
 8Uヾネノ]lつ
  <王王ハ
   しU
という前に L-System 4 と Lparser v2.1 で
コッホ曲線、コッホ雪片、ドラゴン曲線のlsファイルを書いておきます

コッホ曲線

L-System 4 用lsファイル
#start
#L-System 4 Koch curve
6 # recursion depth
60 # angle
1 # thickness as % of length
#
c(12)F
#
F=F+F--F+F
@
#end


Lparser v2.1 用lsファイル
#start
#Lparser v2.1 Koch curve
recursion 6
angle 60
no_wait 1
#
axiom c(15)F
#
rule F=F+F--F+F
#rule ~ = _ # uncomment to remove random efx
#end

以下同じ形式です
ソフトウェアの違いというか方言で微妙に内容が違うのは勘弁してください
32L-System厨 :2015/05/31(日)11:06:03 ID:CJb
  ,..-―-、
  i  .ルハ、 }
  | l ゚ ヮ゚ノ! そのうち興味を持った人に作品を
  |__lノヌ7ヽ| 貼ってもらうのもいいかもしれない
  ノ_zュ__}
コッホ雪片
#start
#L-System 4 Koch snowflake
6 # recursion depth
60 # angle
1 # thickness as % of length
#
c(12)F--F--F
#
F=F+F--F+F
@
#end



#start
#Lparser v2.1 Koch snowflake
recursion 6
angle 60
no_wait 1
#
axiom c(15)F--F--F
#
rule F=F+F--F+F
#rule ~ = _ # uncomment to remove random efx
#end
33L-System厨 :2015/05/31(日)11:07:46 ID:CJb
  ,..-―-、
  i  .ルハ、 }
  | l ゚ c゚ ノ! 一応これからも
  |__j´丈 d| なるべくlsファイルも貼って行くつもりだけど
  ソ_zュ__}
ドラゴン曲線
#start
#L-System 4 Dragon curve
12 # recursion depth
90 # angle
1 # thickness as % of length
#
c(7)FX
#
X=X+YF
Y=FX-Y
#end



#start
#Lparser v2.1 Dragon curve
recursion 12
angle 90
no_wait 1
#
axiom c(2)FX
#
rule X=X+YF
rule Y=FX-Y
#rule ~ = _ # uncomment to remove random efx
#end
34L-System厨 :2015/06/06(土)11:54:14 ID:9nU
  ノ` ー'^ー‐'"ヽ
  ヽ       ヽ
  /   お    l
  ヽ   つ    〉
  .ノ   |    ヽ
  )        /
  )        (
 ,ィ,ヽ_  __  _/   _
ア    V .∨\`  .rユ_j_j゙i
  .::i-/、'| ハ_i_ :ム  /`ヽ  >'
  /l/-、 !'  ゙_ヽ }./ ヽ、 〉'
イ!.|,,.l!  li  / l! lノ/   ./
、| | ,.-.、_    ''ヽ   ./
..l,、!ゝ    ̄マ ノ   /
::/l ヽ アフ7'ア   /
'  ¨<゙,介r'    ./
┌──────────────────────────┐
│いよいよ植物っぽいの作っていくよ~               .|
│そのためにも[(プッシュ)と](ポップ)は不可欠になります    .|
│[(プッシュ)と](ポップ)の効用の説明は↓             .|
│ttp://news.mynavi.jp/articles/2008/10/08/cedec03/008.html .|
│                                      .|
│サンプルは「The Algorithmic Beauty of Plants」の        .|
│25ページ、fig 1.24 からいくつか                   .|
│単純なルールでもそれっぽいものができます           .|
└──────────────────────────┘








35L-System厨 :2015/06/06(土)12:03:43 ID:9nU
  ,..-―-、
  i  .ルハ、 }
  | l ゚ ヮ゚ノ! >>34 を L-System 4 のlsファイルで書くと
  |__lノヌ7ヽ| 上の図から順に
  ノ_zュ__}

#start
#L-System 4
#The algorithmic beauty of plants p.25 fig.1.24a
5 # recursion depth
25.7 # angle
1 # thickness as % of length
#axiom
F
#rules
F=F[+F]F[-F]F
@
#end

#start
#L-System 4
#The algorithmic beauty of plants p.25 fig.1.24c
4 # recursion depth
22.5 # angle
1 # thickness as % of length
#axiom
F
#rules
F=FF-[-F+F+F]+[+F-F-F]
@
#end

#start
#L-System 4
#The algorithmic beauty of plants p.25 fig.1.24e
7 # recursion depth
25.7 # angle
1 # thickness as % of length
#axiom
X
#rules
X=F[+X][-X]FX
F=FF
@
#end
36L-System厨 :2015/06/06(土)12:56:07 ID:9nU
  ,..-―-、
  {  ノiハ、 }
  lw! ゚ ヮ゚ノj   Lparser v2.1 のlsファイルだと
 8Uヾネノ]lつ  こんな感じです
  <王王ハ
   しU

#start
# Lparser v2.1
#The algorithmic beauty of plants p.25 fig.1.24a
recursion 5
angle 25.7
no_wait 1

axiom c(4)F

rule F=F[+F]F[-F]F

#rule ~ = _ # uncomment to remove random efx
#end

#start
# Lparser v2.1
#The algorithmic beauty of plants p.25 fig.1.24c
recursion 4
angle 22.5
no_wait 1

axiom c(4)F

rule F=FF-[-F+F+F]+[+F-F-F]

#rule ~ = _ # uncomment to remove random efx
#end

#start
# Lparser v2.1
#The algorithmic beauty of plants p.25 fig.1.24e
recursion 7
angle 25.7
no_wait 1

axiom c(4)X

rule X=F[+X][-X]FX
rule F=FF

#rule ~ = _ # uncomment to remove random efx
#end
37L-System厨 :2015/06/06(土)13:38:30 ID:9nU


38L-System厨 :2015/06/06(土)13:49:05 ID:9nU
           .  - ── -  .
          /              ` .ノ}
.      . '               ト、
       /      /   ∧. ∧      Vハ
     '   / . 斗ト /  ∨ ,ィ十 、   Y
.     i  / /レ__レ'    ∨ _ハ! ハ     l
.     |   |i /〃云k    .ィ云`ヾリ     |
     从 iル' ! |l匕l|    |l匕l| }l| ト、 |  ?
.     人ハ!  .t仆ソ    t仆ソ ノ | | i. !
      |N|""""          "" | レ'  !
      | 〈     「 ̄ ̄ }    | |   |
      | i〕ト .   ー‐ ' .   イl| |   |
      | li i i  _∧ ̄ ノ^ト、 l! ル'    !
      | ll l /〈   X´ リ ト、    l
      | ll/|_ ∨}__ ∨  .| \   |
      /   / V ∨ ─┘  ヽ  リ
     /  i |  \.  ∨/  >   i | ∨
┌────────────────────────┐
│お絵かきモードとかいうの使って画像貼ってみたけど   .|
│良く分からないんだけど?                   .|
>>37 は三次元で木っぽいものを作ってみたよ       .|
│といってもオリジナルじゃなくて~               .|
│「The Algorithmic Beauty of Plants」 25ページ、fig 1.24 .|
│や L-System 4 のサンプルファイル Bop02.ls と同じかも .|
│しれない                             .|
│                                   .|
│因みに L-System 4 のサンプルファイルは         .|
│インストールフォルダの lsfiles フォルダにあります     .|
│例えば C:\Program files\LSystem4 直下とか       .|
└────────────────────────┘
39L-System厨 :2015/06/06(土)13:55:11 ID:9nU
  ,..-―-、
  {  ノiハ、 } >>38 はかせ、間違ってます
  lw! >__<ノj x25ページ、fig 1.24 => ○26ページ、fig 1.25 です!
 ⊂}8- ]lコ= ・ ・ ・ ・ ・ ・
  <王王ハ
   しU

>>37を L-System 4 で表すと
#start
# --- L-System Parser/Mutator --- Lj Lapre ----------------------------------
#The Algorithmic Beauty of Plants p.26 fig.1.25
#L-System 4 Bop02.ls
7 # recursion depth
22.5 # angle
30 # thickness as % of length
#
c(8)A
#
A=[&FL!A]>>>>>[&FL!A]>>>>>>>[&FL!A]
F=S>>>>>F
S=FL
L=[c(1)^^{-f+f+f-|-f+f+f}]
@
#end

>>37を Lparser v2.1 で表すと
#start
# Lparser v2.1
#The Algorithmic Beauty of Plants p.26 fig.1.25
recursion 7
angle 22.5
thickness 50
shape 1
switch_yz 1
#no_wait 1
#
axiom c(12)A
#
rule A=[&FL!A]>>>>>[&FL!A]>>>>>>>[&FL!A]
rule F=S>>>>>F
rule S=FL
rule L=[c(8)^^{-f+f+f-|-f+f+f}]
#rule ~ = _ # uncomment to remove random efx
#end
40L-System厨 :2015/06/06(土)14:14:07 ID:9nU
           ...::´::::::::::::::::::::::::::::::::::::::::::::::::::`:..、
            /:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::\
         .´:::::::::::::/::::ハ::::::ハ::::::::::::::::::::::::::::::::::::::::::ヽ
          /:::::::::/:::::{:::/ ヽ::::l ヽ::::::::::::::::::::::::::::::::::::::::ハ
          '::::::::::::{:::::ハ::l   ヽ::l\ヽ:\:ヽ:::::::::::::::::::::::::::!
       l:::::::::::::l:::,′:レ´  \ `ヾー-\:::::::::::::::::::::::|
        {::::::::::::ハ:レ´__      彡ミ`ヽ ヾ:::::::::::::::::::::}
        {::::::::::::{ / んミ.、    んとハ } !::::::::::::::::::::|
       {:::::::::::ヘ { {:.しr',     V:し:フ  ,:::::::::::::::::::::l   
          i::ハ:::::::ハ  弋;ソ     `¨´ xx !:::::::::::::::::::::!
          ` |::::::ハ xx            i:::::::::::::::::::::l    
           |::::::::{           - 、  U│::::::::::::::::i::j
          l::::::::ゝ      マ ̄   )  ..ィ::::::::l::::::::从!
             V:::::::::: ̄::::..─ニニ ´ イ:::VV:::ノレ´-─,--.、
              \:::{\:ヽ::ヽ/l_  / /‐y∠:_:_/: : : : \
              /´ハ´(  /`く / //   /``ヽ⌒ヽ: :',
              イ   ハ ヽ / ( )/ / /   /    \;;;;}: :}
           / {   {  \\/ /  /   /  /   V;;}: :}
          ,'   {   {__ヽ__∠ -─'‐-- ! /      V: :/
           {   レ' ̄                 l /      ヽ/_
┌────────────────────────┐
│ところで、はかせ~                       .|
│今までの流れだとサンプル使うとこんな図が描けますっ  .|
│てやってるだけですよね?                   .|
│角度や世代を変えれば多少は違う図が出来ますけど… .|
│                                   .|
│もう少しシミュレーション板らしく、パラメータを変えて   .|
│色々な樹形が出来ます~!みたいなこと          .|
│した方が読んでくれる人たちも応用が利くと思うんです  .|
│けど?                               .|
└────────────────────────┘
41L-System厨 :2015/06/06(土)14:14:49 ID:9nU
               枝分かれにはホンダモデル♪

                            \   |  /
                                ,、,、   /
                                   |::::::|
               -──                  |:rベ    ̄
          ノレ'´        \       /^つ:(__)
          7   \/ / ∧   ヽ    /\ }::::(ノ
               /|厶く.|/ ∨ハ     /\  く|::::::|     __
         /  |/〃r':しト  x≪N   |/   丶  |^^′ .....::::::::::::::::::::丶、
.        / /^|│{{ 弋.ソ   r'しハ| l |      |/  ./ :::::::::::::::::::::::::::::::::ヽ
       / { {|│、、      弋ソノ 八|     ./   /:::::/|::/\|\_⌒::::::::::::::.
           乂|│          、、 { |    ./    .::::::::|´厶.  ヽ{:::ハY|:::::::::::i
      /   /  |/>  `  一    イ |   ./      |::::::〃{:::ハ   弋ン ノ|:::::::::::|
.     /   / /「  |>  -r=≦ |/  /       レVハ{.弋ン     //|:::::::::::|
    /   //   >ヘxく_>、/∨   //            |::V/  _   ⌒} |:::::::::::|
.   / //、   \ ∨:∨<   /            |::::ゝ ∨_. イ八_:八|
   /             \_∨_/   イ                |∧/\:::ア}  〉^''7<}
.  / 〃    ∨        l/ |                 /、 \y'-、/  \
 /∨     /          /l │               / Y⌒) (  } ∨ /\
┌─────────────────────────────────┐
│なの~ それなら心配いらないけど                           .|
│「The Algorithmic Beauty of Plants」の2章「Modeling of trees」がまさにそれに .|
│あたります 枝分かれの数理モデル"ホンダモデル"などをL-System で表現  .|
│することによって、簡単に色々な樹形が創作出来る様になるよ!         .|
└─────────────────────────────────┘
42L-System厨 :2015/06/07(日)11:56:34 ID:jzR
           __          :: :: :: :: :: :: :: :: :: :: :: :: ::
       , ,.ィ'´   ,  `ヽ、         :: :: :: :: :: :: :: :: :: :: ::
      ィ'"   , / , /.ハ、.ム     お  ち: :: :: :: :: :: :: :: :: ::
      ,'    ,アエ/i/ 二 : l     .い  く:: :: :: :: :: :: :: :: :: ::
      l : ,!.i l i ftオ  fォ.!ilリ      し  わ  :: :: :: :: :: :: :: ::
      | : l |.l |::: ヒラ  ヒリ::lノ     い  っ  : :: :: :: :: :: :: ::
       | : `:i : l r―--tッ ノ .    よ  て   : :: :: :: :: :: :: ::
       | .,ィzi: :.lz.゙..__,,..ィ'l       ね     : :: :: :: :: :: :: ::
      l!/  ヽバーt'j :i/,' ヽ.        ! !     :: :: :: :: :: :: :: ::.
     ./li.、   ト.Vヌfy'」./ l'            : :: :: :: :: :: :: ::
      ./ :l! ゙、  !<゙lミ/,」 l /!            :: :: :: :: :: :: :: ::
    ,' : .|i  ヽ | ヽ!' ;l ,' :l            :: :: :: :: :: :: :: ::
    ,' .::.l|    l: ./ ,'! ,, !           . :: :: :: :: :: :: :: ::
   ,'   :li    l、 l / l ィ゙ ハ          .. :: :: :: :: :: :: :: :: ::
   !   :i|、   |ーニキニヽ--:l、       :: :: :: :: :: :: :: :: :: :: :: ::
┌────────────────────────────┐
│ホンダモデルについて、オリジナルがネットから入手できないので .|
│樹木の枝の形態と力学的最適構造  から               .|
│ttps://www.jstage.jst.go.jp/article/jsmbe1963/14/4/14_4_296/_pdf .|
│1.非対称2分岐                                .|
│2.枝の長さと周径は等比数列に従う                   .|
│3.枝が分岐するとき分岐面は一つの平面を形成する         .|
│4.重心位置は,分岐前の枝の延長上にある               .|
│                                         .|
│「「The Algorithmic Beauty of Plants」」の2章でも同じようなこと   .|
│書いてあるね                                 .|
└────────────────────────────┘
43L-System厨 :2015/06/07(日)11:58:39 ID:jzR
            ,. -──‐-. 、
       (V(, . : :´: : : : : : : : : : . `ヽ、
        ゝ: . : : : : : : : : : : : : : : : : : .\
      (: ノ: : : : : : : : : : : ハ: : : : : : : : :ヽ
       /: : : : :..:/: /: :./  |:.:ト、: : : : : : : ',
         il: : : : : メ、/ l/   ヽ| / }: : : : :l
       l: : : : :/l/ `メ、    イ V : : : : :.l
       l: : : :/ 〃⌒       ⌒ヽハ: : : ::.|
       l: /i: | i r:心     r心 i }: :i: : :|
       | ( l: | ヽ弋ソ    弋ソノ: :从ハノ
       |:.:.:ト、、 ''''        ''' j: :iノ:.i
         ノ: :ノ: ト、  ( ` ̄ ̄´ ) ノ: .l: : |
      /: / ヽ| i ヽ> ー  <  | V ヽ:|
      /:./    |  ヽ/´`ヽ/  |    '.|
      /:.:l      L__  ',ヽ__// _」/   i|
      /.:.:.l      /  V V  ヽ /     |
┌────────────────────────────┐
│これを、L-System化すると「The Algorithmic Beauty of Plants」の .|
│fig 2.6 のようになるんだけど、これだとまだ意味分かんね状態です .|
│                                         .|
│そういえば、樹形サンプルが L-System 4 や Lparser v2.1 にあっ .|
│た気がすると思って良く見てみたらlsファイル化されてましたw    .|
│L-System 4:TREE00.LS、Lparser v2.1:abop.ls です         .|
└────────────────────────────┘
ls ファイルの置換規則=rule は
A = F[ &( a0 ) '( r2 ) !( wr ) B ] >( c ) '( r1 ) !( wr ) A
B = F[ -( a2 ) '( r2 ) !( wr ) $C ] '( r1 ) !( wr ) C
C = F[ +( a2 ) '( r2 ) !( wr ) $B ] '( r1 ) !( wr ) B
ここで
r1:幹の伸張の減少率、幹の伸張が等比数列になる
r2:枝の伸張の減少率、枝の伸張が等比数列になる
a0:幹の分岐角
a2:枝の分岐角
wr:太さの減少率、幹や枝の周径が等比数列になる fig 2.6 では 0.707、ls ファイルでは 0.9
c:広がり角、fig 2.6 では d と表記され 137.5°、ls ファイルでは137°

ポイントは置換規則が3つだけで樹形が描けるということと
wrとc決め打ちなら、r1、r2、a0、a2の4つのパラメータだけで樹形が
決定されるということです
44L-System厨 :2015/06/07(日)11:59:21 ID:jzR
  ,..-―-、
  i  .ルハ、 } 「The Algorithmic Beauty of Plants」のtable 2.1 に
  | l ゚ c゚ ノ! パラメータの設定例があるので参考にすると
  |__j´丈 d| fig 2.6 の a-d と同じものが描けましたけど?
  ソ_zュ__}
45L-System厨 :2015/06/07(日)12:03:09 ID:jzR
  ,..-―-、  画像載せるの忘れちゃったのでもう一回w
  i  .ルハ、 } 「The Algorithmic Beauty of Plants」のtable 2.1 に
  | l ゚ c゚ ノ! パラメータの設定例があるので参考にすると
  |__j´丈 d| fig 2.6 の a-d と同じものが描けましたけど?
  ソ_zュ__}










46L-System厨 :2015/06/07(日)12:30:49 ID:jzR
  ,..-―-、
  i  .ルハ、 } L-System 4 の lsファイルで表すと
  | l ゚ ヮ゚ノ!
  |__lノヌ7ヽ| ただし、table 2.1d を参考にしたlsファイルは -30°指定できないので
  ノ_zュ__} 替わりに置換規則BとCの+と-を入れ替えてますけど
#start
#The Algorithmic Beauty of Plants p.56、fig 2.6a、p.57、table 2.1a
#L-System 4 TREE00.LS、TREE00B.LS、TREE00C.LS、TREE01.LS
10 # recursion depth
45 # angle
15 # thickness as % of length
#axiom
c(12)FFA
#rules
A=F[&'(.6)!B]>(137)'!(.9)A
B=F[-'(.6)!(.9)$C]'!(.9)C
C=F[+'(.6)!(.9)$B]'!(.9)B
@
#end

#start
#The Algorithmic Beauty of Plants p.56、fig 2.6b、p.57、table 2.1b
#L-System 4 TREE00.LS、TREE00B.LS、TREE00C.LS、TREE01.LS
10 # recursion depth
45 # angle
15 # thickness as % of length
#axiom
c(12)FFA
#rules
A=F[&'(.9)!B]>(137)'!(.9)A
B=F[-'(.9)!(.9)$C]'!(.9)C
C=F[+'(.9)!(.9)$B]'!(.9)B
@
#end
47L-System厨 :2015/06/07(日)12:31:06 ID:jzR
  ,..-―-、
  i  .ルハ、 }
  | l_^~゚ノ! プププ
  |__l /)ヘ| 改行が多すぎるって出ちゃったので2レスに分けるしかないかもしれない
  ノ___}
#start
#The Algorithmic Beauty of Plants p.56、fig 2.6c、p.57、table 2.1c
#L-System 4 TREE00.LS、TREE00B.LS、TREE00C.LS、TREE01.LS
10 # recursion depth
45 # angle
15 # thickness as % of length
#axiom
c(12)FFA
#rules
A=F[&'(.8)!B]>(137)'!(.9)A
B=F[-'(.8)!(.9)$C]'!(.9)C
C=F[+'(.8)!(.9)$B]'!(.9)B
@
#end

#start
#The Algorithmic Beauty of Plants p.56、fig 2.6d、p.57、table 2.1d
#L-System 4 TREE00.LS、TREE00B.LS、TREE00C.LS、TREE01.LS
10 # recursion depth
30 # angle
15 # thickness as % of length
#axiom
c(12)FFA
#rules
A=F[&'(.7)!B]>(137)'!(.9)A
B=F[+'(.7)!(.9)$C]'!(.9)C
C=F[-'(.7)!(.9)$B]'!(.9)B
@
#end
48L-System厨 :2015/06/07(日)12:39:00 ID:jzR
  ,..-―-、
  {  ノiハ、 }
  lw! ゚ ヮ゚ノj Lparser v2.1 の ls ファイルです
 8Uヾネノ]lつ
  <王王ハ
   しU
#start
#The Algorithmic Beauty of Plants p.56、fig 2.6a、p.57、table 2.1a
#Lparser v2.1 abop 1.ls、abop 2.ls
recursion 10
angle 45
thickness 15
shape 1
switch_yz 1
#
axiom c(12)FFAL
#
rule A = F[&'(.6)!B]>(137)'!(.9)A
rule B = F[-'(.6)!(.9)$C]'!(.9)C
rule C = F[+'(.6)!(.9)$B]'!(.9)B
#end

#start
#The Algorithmic Beauty of Plants p.56、fig 2.6b、p.57、table 2.1b
#Lparser v2.1 abop 1.ls、abop 2.ls
recursion 10
angle 45
thickness 15
shape 1
switch_yz 1
#
axiom c(12)FFAL
#
rule A = F[&'(.9)!B]>(137)'!(.9)A
rule B = F[-'(.9)!(.9)$C]'!(.9)C
rule C = F[+'(.9)!(.9)$B]'!(.9)B
#end
49L-System厨 :2015/06/07(日)12:42:24 ID:jzR
  ,..-―-、
  {  ノiハ、 } r1、r2、a0、a2を変えればサンプル以外にも
  lw! >__<ノj 色々な樹形が作れます
 ⊂}8- ]lコ= ・ ・ ・ ・ ・ ・
  <王王ハ
   しU
#start
#The Algorithmic Beauty of Plants p.56、fig 2.6c、p.57、table 2.1c
#Lparser v2.1 abop 1.ls、abop 2.ls
recursion 10
angle 45
thickness 15
shape 1
switch_yz 1
#
axiom c(12)FFAL
#
rule A = F[&'(.8)!B]>(137)'!(.9)A
rule B = F[-'(.8)!(.9)$C]'!(.9)C
rule C = F[+'(.8)!(.9)$B]'!(.9)B
#end

#start
#The Algorithmic Beauty of Plants p.56、fig 2.6d、p.57、table 2.1d
#Lparser v2.1 abop 1.ls、abop 2.ls
recursion 10
angle 30
thickness 15
shape 1
switch_yz 1
#
axiom c(12)FFAL
#
rule A = F[&'(.7)!B]>(137)'!(.9)A
rule B = F[+'(.7)!(.9)$C]'!(.9)C
rule C = F[-'(.7)!(.9)$B]'!(.9)B
#end
50L-System厨 :2015/06/07(日)17:38:31 ID:jzR
                        ト、
                  -‐…・・- ヽ ヽ
              ´            ⌒>
           /                    ヽ
                            ハ
.        /        ∧                 |l
  ___′     / /     L _ ト        ||
 ´     |     レ{    \{  \{ ヘ  ト、  リ      / ̄ ̄ ̄ ̄ ̄ ̄\
|        |/|  イ ∨          Y '^ Y|     |褒めてないです!>
|        l! || N        ィ巧ミっ| |  リ |         \______/
|      -‐|∧ ハc==ミ       〃〃| レ'  |
           | 〃〃      __  | /    !
 \        | 人     r一 ´  nhm′   ∧
   \      |′ ≧ァ‐--≧=‐=ァ'´ ̄ ̄∨  ∧
    \        / > l 〈::::〉〈      ∨  ∧
      \      /  \ ∨:::∨ヘ       ∨  ∧
         丶   /    \V:// \     \  ヽ
┌────────────────────────────┐
│もうひとつの2分岐モデルとしてアオノ&クニイモデルがあります   .|
│「The Algorithm Beauty of Plants」の59ページ、fig 2.7 ね       .|
│こっちはサンプルファイルが無かったので自分で ls ファイル化して .|
│みましたけど                                 .|
│                                         .|
│とはいっても前例>>43があるのでパターンマッチングでどうにか   .|
│なりました                                   .|
│                                         .|
│やってみて気付いたんだけど fig 2.7 の式の通りにやっても同じ図 .|
│にならないので"&"を"^"に変えてます                  .|
│まあ、弘法も筆の誤りって言うし多少はね?              .|
└────────────────────────────┘
ls ファイルの置換規則=rule は
A = F[ ^( a1 ) '( r1 ) !( wr ) B ] >( 180 ) [ ^( a2 ) '( r2 ) !( wr ) B ]
B = F[ +( a1 ) '( r1 ) !( wr ) $B ] [ -( a2 ) '( r2 ) !( wr ) $B ]
ここで
r1:幹や枝の減少率1
r2:幹や枝の減少率2
a1:幹の分岐角1
a2:幹の分岐角2
wr:太さの減少率、 fig 2.7 では 0.707、ls ファイルでは 0.9にしました

こっちは置換規則が2つだけで樹形が描けて
wr決め打ちなら、r1、r2、a1、a2の4つのパラメータだけで樹形が
決定です
51L-System厨 :2015/06/07(日)17:45:12 ID:jzR
  ,..-―-、
  i  .ルハ、 }
  | l >__<ノ! なんか見難い図なっちゃったけど
  |__lノヌ7ヽ| fig 2.7 a-d と同じようなものが出来たかもしれない
  ノ_zュ__}









52L-System厨 :2015/06/07(日)19:14:35 ID:jzR
  ,..-―-、
  i  .ルハ、 }
  | l ゚ ヮ゚ノ! L-System 4 の lsファイルで表すと
  |__lノヌ7ヽ| >>46-47 も c(12) じゃなくて c(8) の方が良かったかもしれない
  ノ_zュ__}

#start
#The Algorithmic Beauty of Plants p.59、fig 2.7a、p.58、table 2.2a
10 # recursion depth
5 # angle
15 # thickness as % of length
#axiom
c(8)FFA
#rules
A=F[^'(.9)!B]>(180)[^(65)'(.7)!B]
B=F[+'(.9)!$B][-(65)'(.7)!$B]
@
#end

#start
#The Algorithmic Beauty of Plants p.59、fig 2.7b、p.58、table 2.2b
10 # recursion depth
10 # angle
15 # thickness as % of length
#axiom
c(8)FFA
#rules
A=F[^'(.9)!B]>(180)[^(60)'(.7)!B]
B=F[+'(.9)!$B][-(60)'(.7)!$B]
@
#end
53L-System厨 :2015/06/07(日)19:15:47 ID:jzR
  ,..-―-、
  i  .ルハ、 }
  | l_^~゚ノ! プププ
  |__l /)ヘ| また改行が多すぎて一気に投稿出来なかったけど
  ノ___}

#start
#The Algorithmic Beauty of Plants p.59、fig 2.7c、p.58、table 2.2c
10 # recursion depth
20 # angle
15 # thickness as % of length
#axiom
c(8)FFA
#rules
A=F[^'(.9)!B]>(180)[^(50)'(.8)!B]
B=F[+'(.9)!$B][-(50)'(.8)!$B]
@
#end

#start
#The Algorithmic Beauty of Plants p.59、fig 2.7d、p.58、table 2.2d
10 # recursion depth
35 # angle
15 # thickness as % of length
#axiom
c(8)FFA
#rules
A=F[^'(.9)!B]>(180)[^'(.8)!B]
B=F[+'(.9)!$B][-'(.8)!$B]
@
#end
54L-System厨 :2015/06/07(日)19:23:19 ID:jzR
  ,..-―-、
  {  ノiハ、 }
  lw! ゚ ヮ゚ノj Lparser v2.1 の ls ファイルです
 8Uヾネノ]lつ
  <王王ハ
   しU

#start
#The Algorithmic Beauty of Plants p.59、fig 2.7a、p.58、table 2.2a
recursion 10
angle 5
thickness 15
shape 1
switch_yz 1
#
axiom c(12)FFA
#
rule A=F[^'(.9)!B]>(180)[^(65)'(.7)!B]
rule B=F[+'(.9)!$B][-(65)'(.7)!$B]
#end

#start
#The Algorithmic Beauty of Plants p.59、fig 2.7b、p.58、table 2.2b
recursion 10
angle 10
thickness 15
shape 1
switch_yz 1
#
axiom c(12)FFA
#
rule A=F[^'(.9)!B]>(180)[^(60)'(.7)!B]
rule B=F[+'(.9)!$B][-(60)'(.7)!$B]
#end
55L-System厨 :2015/06/07(日)19:23:37 ID:jzR
  ,..-―-、
  {  ノiハ、 } 「The Algorithmic Beauty of Plants」
  lw! >__<ノj 最初に読んだ頃は樹形にあまり興味なかったんで
 ⊂}8- ]lコ= ・ ・ ・ ・ ・ ・
  <王王ハ 2章はまじめに読まなかったんですけど
   しU  ls ファイルに落とせるとやっぱり興味が沸きますね

#start
#The Algorithmic Beauty of Plants p.59、fig 2.7c、p.58、table 2.2c
recursion 10
angle 20
thickness 15
shape 1
switch_yz 1
#
axiom c(12)FFA
#
rule A=F[^'(.9)!B]>(180)[^(50)'(.8)!B]
rule B=F[+'(.9)!$B][-(50)'(.8)!$B]
#end

#start
#The Algorithmic Beauty of Plants p.59、fig 2.7d、p.58、table 2.2d
recursion 10
angle 35
thickness 15
shape 1
switch_yz 1
#
axiom c(12)FFA
#
rule A=F[^'(.9)!B]>(180)[^'(.8)!B]
rule B=F[+'(.9)!$B][-'(.8)!$B]
#end
56L-System厨 :2015/06/07(日)19:42:33 ID:jzR
                   -──-
                 ´           `丶、
             /     ∧          ヽ
               /    / / /  . |\     '┐
                  |/`|/   ∨⌒ト      | | おねーさんですから
            | |  /x=ミ   x=ミ八     | |
            |八 イY r':ハ     r':ハY │  l |
              Ⅳ Vソ     Vソ| /⌒l/│
                    ''        '' | | _ノ  !
              个 .   、  _ノ   | '´  │
                    ヽ|  >r- -r<._|/|    |
                    イ/ {>< / }`ヽ、  |
      r(ヽ、     /   >∨〈∨<  ∧   |  -っ、
       {ツ ト、   /      \{∠. _/    ヽ | / ,(ノノ)
.       lゝ、/ \/   |           /   Ⅵ/|  ノ
       {{ /   / `ヽ Ⅵ        ∨    /| |/「|
       \  /   ∨│        丶     、\j |
        \      /|          \|   \_,,ノ
.            \__/ .|              |\   /
┌────────────────────────┐
│ミスが増えてきたので今回はここまでです          .|
│「The Algorithmic Beauty of Plants」の60ページ、fig 2.8  .|
│のような3分岐の樹形もできるようなので次回までに調べ .|
│てきます                              .|
│                                   .|
│そして、次回は木に葉を付けるとどうなるか?       .|
│葉の形状で見た目はどう変わるか?             .|
│そこから、更に葉や花の形の作り方などを予定してます .|
│最後の↑は一応、木よりも草向けかもしれない       .|
└────────────────────────┘
57L-System厨 :2015/06/13(土)13:05:07 ID:TVd
 _
´  `Y
    l
  ス  l     __
  イ  |_,./レ'´. : :; : ;、:`:.ヽ、
  マ   |7ィ: : : /./| / V、i:i,:ヽ
  セ   |:.:.:.:/7「'゙ i/  lノ_l「V:',
  ン  |:;、:l  fミl!    {ミi !iリ
  :  |_.|:.! r゙ヒリ.    ゞr.、l'
  :   〕| ー'____,._ __ `゙ノ
  :  「:|.:|ー<:::::::::::::::::Yレ'|
    /.:.:.:.l:l:l:/_¨仗'7「:l:l:.:|
、__/.:l.:.:.:.:.:/  ゙ー '" |:l.:.:.:l
   |:.:.l:.:.:.:./,  i  :l |:.:.:.:!
   |/i:.:.:. ;' |_」  |__.|:.ハl
    |:.:.:.;' {  }  :l  l:l
┌───────────────────────────┐
>>56 で言ってた「The Algorithmic Beauty of Plants」の3分岐は .|
│残念ながら出来ませんでした                      .|
│その代わりにLparser v2.1 ttp://laurenslapre.nl/lapre_004.htm  .|
│に興味深い3分岐サンプル                       .|
│abop 3.ls、tree 1.ls、tree 2.ls、tree 3.ls、tree 4.ls          .|
│があるのでそっちを参考にしてみてください             .|
│                                       .|
│継続調査かもしれない                          .|
└───────────────────────────┘
58L-System厨 :2015/06/13(土)13:05:54 ID:TVd
  ,..-―-、
  {  ノiハ、 } >>19-23 の記号以外の解説漏れがあったので...
  lw! >__<ノj
 ⊂}8- ]lコ= ・ ・ ・ ・ ・ ・
  <王王ハ
   しU
g:位置情報を記憶しないで移動
.:現在のタートルの位置情報を記憶する
それと、忘れてた記号について
$:現在のタートルの向きからベクトルの外積を使って水平面を計算、取得しなおす
59L-System厨 :2015/06/13(土)13:09:25 ID:TVd
                    __
              -‐ . . . . ̄ . . . . . . . .、
           / : : : 、 ,: : : : : : : : : : ; : : \
           / : : : : : : :' : : : : :ハ: : : :∧: : : : ヽ
         /' ;": : : : : l: : : : ,: :/ !: : / i: : ,: ",: ヽ
        ,':. : : : : : : :.|: ; :,ィ: :/  !: :/   !: ハ: :l : : `、
        l: : : : : : : : :|/!/ レ_≧、l∠   レ' _l;_l: : : : l
         |: : : : : : : : :|  //::::::「    テ=、:l: :j: : :!
          |: : : : : : : : :l 〈 ハ:::::d    /:::`:i } V:. : .}
          l: : : : : : : : :l ,,, ヽ:ニ:ノ     {.し:ソ ! ,イ: :N
          │: : : : : i: : |          `ー'゚ ,,/: :.N
         !:: :. : : : l: : |           '     |:: : |
        ! : : : : : l: : |     ,. ‐‐- 、     l: : :|
   , ‐‐-、__レヘ.:.、: : !: :.lト、   `  -‐'   /:: : :.l
  /: : _: : ∨ `' W V!:ノ、 丶  __  . . .ィ:´:: :: :: : :|
  /: /:::::::〉: /           \   |ニ‐‐、::;lヘ: : ;、 : 丿
  {: :{:::::::/: | !,へ        ヾ二_:ゝ  l  `´ `~
  l: :l::::::!/\   \       / ヽつ |\   ,‐- 、
  l: :ヽ:/ . . . . \  \‐-、  / ─孑ヽ.!. .⊂/,─ }
  ヽ: :/. . . . . . / ヽ   ヽ. .ヽ/  :二}、 ヽ/У/ ̄ 〉
 ( ̄/. . . . . . /. . . ヽ.   /|   、_ノ ヽ.   〈/`.j
┌───────────────────────────┐
│え~気を取り直して植物CGの葉や花を作るためのパーツを   .|
│紹介していきます  L-System だけだと単純なものしか作れな .|
│いと思われるかもしれませんが工夫次第で何とかなります!   .|
│                                       .|
│まずは葉や花弁に相当するパーツとして単純な図形から     .|
│タートルが一度に動ける線分の長さは基本的に一定なので   .|
│作れるのは三角形=正三角形、四角形=ひし形、五角形、     .|
│六角形、七角形となります                       .|
└───────────────────────────┘












60L-System厨 :2015/06/13(土)13:42:32 ID:TVd
  ,..-―-、
  i  .ルハ、 } それぞれ L-System 4 の ls ファイルで書くと
  | l_^~゚ノ! プププ
  |__l /)ヘ| 角度指定があるものはその角度でないと作れないので注意だけど
  ノ___}

正三角形
#start
# Leaf_equilateral_triangle
1 # recursion depth
30 # angle
10 # thickness as % of length
#axiom
L
#rules
L=[{-(30)f+(120)f+(120)f}]
@
#end

以下、"L" の置換規則=rule 以外同じなので省略
菱形
L=[{-f++f-|-f++f}]
五角形
L=[{-(30)ff+(60)f+(60)z-(90)|-(90)z+(60)f+(60)ff}]
六角形
L=[{-f+f+f-|-f+f+f}]
七角形
L=[{-(30)ff+(30)f+(30)f+(60)z-(90)|-(90)z+(30)f+(30)f+(60)ff}]
61L-System厨 :2015/06/13(土)14:06:33 ID:TVd
  ,..-―-、
  {  ノiハ、 }
  lw! ゚ ヮ゚ノj  Lparser v2.1 で同様に ls ファイルを書くと
 8Uヾネノ]lつ
  <王王ハ
   しU

正三角形
#start
#Lparser v2.1 Leaf_equilateral_triangle
recursion 1
angle 30
#axiom
axiom c(8)L
#rules
rule L=[{-(30)f+(120)f+(120)f}]
#rule ~ = _ # uncomment to remove random efx
#end

以下、"L" の置換規則=rule 以外同じなので省略
菱形
L=[{-f++f-|-f++f}]
五角形
L=[{-(30)ff+(60)f+(60)z-(90)|-(90)z+(60)f+(60)ff}]
六角形
L=[{-f+f+f-|-f+f+f}]
七角形
L=[{-(30)ff+(30)f+(30)f+(60)z-(90)|-(90)z+(30)f+(30)f+(60)ff}]
62L-System厨 :2015/06/13(土)18:45:17 ID:TVd
   /川州州州i洲ム    /
   .l',,ィノィソミlチレ' Vl州!   /  で  機  な
   |洲洲ノ-‐'  ー-lミi゙   |   す  能  ん
   |洲洲 ijー'  ーrjlミ!   |   .か  つ  で
   ヾミミミト:<¨ーァ,,.ィ:リ   |   |  け  こ
   fr;ヘ \_7\''^   __|   |  る  ん
   / ヽ. ヽ_,イ_ヽ/,ヽ  L_   (    ん  な
  .l:  {  .l::::i  :i |   |    .)  
  .|゙ ,.-‐!  ヽ/  lナ   .|   (.  
   i´''"「_____.l_!_ /!    \
  .ハ ´ {i:::li三{ア:{ノ、    `'ー----――
  i、l゙'ー‐' ̄、i:l /l `ー-r‐t-、-=ニ三三
  {/゙''   ―:))z=ニ二二ミt、jソ三三三
┌───────────────────────────┐
│単純な図形でもそれっぽく見える例として              .|
>>6のサンプル1は>>9を見ると葉は六角形、花は菱形です    .|
>>8のサンプル2は>>10を見るとこれも葉は六角形         .|
>>37>>39を見るとまたまたこれも葉は六角形になってます   .|
│サンプル1は後で詳しく見ていきますのでまたその時に      .|
│                                       .|
│「The Algorithmic Beauty of Plants」のfig 5.4 の方法を参考に  .|
│葉や花をよりそれっぽく描画することも出来ます          .|
│次はそれらの例を示します                       .|
└───────────────────────────┘
63L-System厨 :2015/06/13(土)18:47:35 ID:TVd
  ,..-―-、
  {  ノiハ、 } 間違って図を貼る前に書き込んじゃいました
  lw! >__<ノj
 ⊂}8- ]lコ= ・ ・ ・ ・ ・ ・
  <王王ハ
   しU





64L-System厨 :2015/06/13(土)18:54:45 ID:TVd
  ,..-―-、
  i  .ルハ、 } >>64の下の葉は、「The Algorithmic Beauty of Plants」の124ページ、fig 5.6 が
  | l ゚ c゚ ノ! 実現できなかったので焼けクソで作った気がする
  |__j´丈 d|
  ソ_zュ__} L-System 4 の ls ファイルで書くと

>>64の上の葉
#start
#L-System 4, sample leaf
#The Algorithmic Beauty of Plants, p.123, fig 5.5
#BOP00.LS
20 # recursion depth
10 # angle
10 # thickness as % of length
#axiom
L
#rules
L=[A][B]
A=[+A{.].C.}
B=[-B{.].C.}
C=gC
@

>>64の下の葉
#start
#L-System 4, original leaf
#The Algorithmic Beauty of Plants, p.124, fig 5.6
20 # recursion depth
60 # angle
10 # thickness as % of length
#axiom
L
#rules
L=[{.A}]
A=g[-B.][""A''][+B.]
B=gB
@
65L-System厨 :2015/06/13(土)19:09:02 ID:TVd
  ,..-―-、
  {  ノiハ、 } >>64 はかせ~また間違ってます >>64じゃなくて>>63ですよ
  lw! >__<ノj
 ⊂}8- ]lコ= ・ ・ ・ ・ ・ ・
  <王王ハ Lparser v2.1 で同様に ls ファイルを書くと
   しU

>>63の上の葉
#start
#Lparser v2.1, sample leaf
#The Algorithmic Beauty of Plants, p.123, fig 5.5
recursion 20
angle 10
#axiom
axiom c(8)L
#rules
rule L=[A][B]
rule A=[+A{.].C.}
rule B=[-B{.].C.}
rule C=gC
#rule ~ = _ # uncomment to remove random efx
#end

>>63の下の葉
#start
#Lparser v2.1, sample leaf
#The Algorithmic Beauty of Plants, p.124, fig 5.6
recursion 20
angle 60
#axiom
axiom c(8)L
#rules
rule L=[{.A}]
rule A=g[-B.][""A''][+B.]
rule B=gB
#rule ~ = _ # uncomment to remove random efx
#end
66L-System厨 :2015/06/13(土)19:36:19 ID:TVd
        ',                  /  カ  た
  ふ  あ  .l      .   ・ ・ . .   ,'  .エ  ん
  っ め   |   ..’ ,.-‐ '', ̄, ̄`ヽ、 、 l   .ル ぼ
  て  が   .|  , /  /,' /| .i   `ヾ'|   が に
  き        |  :./  ,'-/.,'._/ l _l_l__i_   |   い
  て        l  ,'  l./--./  、l__ヽli::.  .|   て
  |     / : l , l/ fミjミi   fZミiヽヾ  .',   |
  ♪    ./  .ヽ、ic ヒzリ   ヒzリ l | iY \ ♪
       /    ゙, リXx    _¨ xX.|.lノ .l//\__/
___,.-、二l      ヽ    /   `i  ,.|ノ  | :
           ‘,ヽ>..__ヽ_,,..-r'" l   |  ,
            ・  |!  ltXjXメ l     .| .
             : |:  .l     ',    ::|
             ’ l:  |        ∨   ::|
┌─────────────────────────┐
│更に応用としてスズランやツリガネソウの花のような形状も .|
│作れるかもしれない                        .|
│                                    .|
│「The Algorithmic Beauty of Plants」のfig 5.4 の方法は   .|
│滑らかな曲線を作れるけど、欠点として世代が進むと    .|
│際限なく大きくなってしまう...成長が止められません    .|
│                                    .|
│成長をコントロールできる置換規則に置き換えられないか .|
│色々実験してる所です                       .|
└─────────────────────────┘






67L-System厨 :2015/06/13(土)19:47:59 ID:TVd
  ,..-―-、
  {  ノiハ、 }
  lw! ゚ ヮ゚ノj L-System 4 の ls ファイルで書くと
 8Uヾネノ]lつ
  <王王ハ 4つの置換規則で複雑な形状が作れるのは L-System ならではの気がします
   しU

>>66の上の花
#start
#L-System 4, sample flower1
#The Algorithmic Beauty of Plants, p.127-128, fig 5.10
#BOP10.LS
20 # recursion depth
7 # angle
50 # thickness as % of length
#axiom
&(10)c(1)Dc(6)[p>(72)p>(72)p>(72)p>(72)p]
#rules
p=[&(90)[A]+(72)[B]]# one petal
#
A=[^gA{.].# first 'curved line'
B=B^.g.}# second 'curved line'
#
D=t(.1)Ft(.1)FD# branch
@
#end

>>66の下の花
#start
#L-System 4, sample flower2
#The Algorithmic Beauty of Plants, p.127-128, fig 5.10
#BOP10.LS
20 # recursion depth
5 # angle
50 # thickness as % of length
#axiom
&(10)c(1)Dc(6)[p>(72)p>(72)p>(72)p>(72)p]
#rules
p=[&(90)[A]+(72)[B]]# one petal
#
A=[^"gA{.].# first 'curved line'
B=B^."g.}# second 'curved line'
#
D=t(.1)Ft(.1)FD# branch
@
#end
68L-System厨 :2015/06/13(土)19:52:54 ID:TVd
  ,..-―-、
  i  .ルハ、 }
  | l ゚ ヮ゚ノ! Lparser v2.1 で同様に ls ファイルを書くと
  |__lノヌ7ヽ|
  ノ_zュ__} 疲れてきたかもしれないw

>>66の上の花
#start
#Lparser v2.1, sample flower1
#The Algorithmic Beauty of Plants, p.127-128, fig 5.10
recursion 20
angle 7
thickness 50
shape 1
switch_yz 1
#axiom
axiom &(10)c(8)Dc(7)[p>(72)p>(72)p>(72)p>(72)p]
#rules
rule p=[&(90)[A]+(72)[B]] # one petal
#
rule A=[^gA{.]. # first 'curved line'
rule B=B^.g.} # second 'curved line'
#
rule D=t(.1)Ft(.1)FD # branch
#end

>>66の下の花
#start
#Lparser v2.1, sample flower2
#The Algorithmic Beauty of Plants, p.127-128, fig 5.10
recursion 20
angle 5
thickness 50
shape 1
switch_yz 1
#axiom
axiom &(10)c(8)Dc(7)[p>(72)p>(72)p>(72)p>(72)p]
#rules
rule p=[&(90)[A]+(72)[B]] # one petal
#
rule A=[^"gA{.]. # first 'curved line'
rule B=B^."g.} # second 'curved line'
#
rule D=t(.1)Ft(.1)FD # branch
#end
69L-System厨 :2015/06/13(土)20:17:34 ID:TVd
            \              ___         /
             |           ,.ィチ三三三三三=t、     ,'   い  リ
   で  な  そ   |         /三三三ハ三三三三ミぇ、  |
              |.        /三=/l/_li/ Vl_,::-l‐i:三三ム  .l    や  ア
   す  い  ん   |        l三-/,..--、  ヾ,..--、V三三l| .|
              |         |三// ,ィヌt   /モt; i Y三ニ| .|    い  ル
   か  じ  な   L,_       liニ:l  !l三」   l三ミ」 l |三三! |
             r‐{ヽ.=ニ二=f"゙l三l,,. ヾZツ   ヾニン ,,,, |三三| |   .や  ?
       ゃ  わ   |〈ヽ ハ _ l } lニl!          U |三三| |
             |. l "r-l、ニ !"r、lニヽ..  f" ̄ ̄`) ,,..ィ'|三:ニl<二.   い
       な  け  ! | \ l .l `' lVマヌ>‐--r―'''f"ルリソハハハl  |
               !  |    lニl__../ `,ィチ´¨lィzzz-ッ゙`lt、ニ=-、   |   や
       い    ./ ,,.レ''" ̄`i  `Y"l//モtzィ'(ぅ<_,,.イミツ`メt、::\  .\
、           / 〈     :| _lV::/、`ー/:〈::!:ムV‐''゙ / ヽj:::::l   \__/
 ー--.....__,,..-‐'゙   l /  ̄ ̄|  .l'::;';'  ̄7゙ーォー''f二、  ./, V:/
              |     =!=  |;';'   ´゙r'l゙''iー' ̄:l!/ィ'゙  l")
                 |     |  |:;     :l | \/ i    |\
┌────────────────────────────────┐
>>59-68 のパーツを使って植物を幾つか作ってみたので紹介します      .|
│まずは、「The Algorithmic Beauty of Plants」の108ページ、fig 4.8 を参考に .|
>>63 の上の葉パーツを花と葉に応用してヒツジグサを作ってみました    .|
│ttp://ja.wikipedia.org/wiki/ヒツジグサ                        .|
│                                              .|
│葉と花が同じパーツで作れるのは、花は葉から進化したものだからなのかな.|
│なんて考えてしまいました                               .|
│ttp://ja.wikipedia.org/wiki/植物の進化                       .|
└────────────────────────────────┘




70L-System厨 :2015/06/13(土)20:28:18 ID:TVd
  ,..-―-、
  i  .ルハ、 } L-System 4 の ls ファイルで書くと
  | l_^~゚ノ! プププ
  |__l /)ヘ| 
  ノ___} 花を作る置換規則Pを見ると力技で花を作ろうとしてて受けるんだけどw

#start
#L-System 4, water lily & two leaves
#The Algorithmic Beauty of Plants p.108 fig 4.8
14 # recursion depth
5 # angle
10 # thickness as % of length
#axiom
[P][ffffffffffffffffL][+(75)ffffffffffffffffffff+(90)L]
#rules
#flower
P=c(12)[K]J[&(4)K]J[&(8)K]J[&(12)K]J[&(16)K]J[&(20)K]J[&(24)K]J[&(28)K]J[&(32)K]J[&(36)K]J[&(40)K]J[&(44)K]J[&(48)K]J[&(52)K]J[&(56)K]J
I="I
J=[c(10)&(70)IFZ]+(137.5)'(0.995)
K=[A][B]
A=[+A{.].C.}
B=[-B{.].C.}
C=gC
#leaf
L=c(1)[M][N]
M=[+(15)M{.].O.}
N=[-(15)N{.].O.}
O=ggO
@
#end
71L-System厨 :2015/06/13(土)20:33:54 ID:TVd
  ,..-―-、
  i  .ルハ、 } Lparser v2.1 で同様に ls ファイルを書くと
  | l ゚ ヮ゚ノ!
  |__lノヌ7ヽ| 世代=recursion を大きくすると>>66で書いてるように
  ノ_zュ__} パーツがひたすら成長するので形がおかしくなるかもしれない...残当

#start
#Lparser v2.1, water lily & two leaves
#The Algorithmic Beauty of Plants p.108 fig 4.8
recursion 14
angle 5
thickness 10
shape 1
switch_yz 1
#axiom
axiom [P][ffffffffffffffffL][+(75)ffffffffffffffffffff+(90)L]
#rules
#flower
rule P=c(15)[K]J[&(4)K]J[&(8)K]J[&(12)K]J[&(16)K]J[&(20)K]J[&(24)K]J[&(28)K]J[&(32)K]J[&(36)K]J[&(40)K]J[&(44)K]J[&(48)K]J[&(52)K]J[&(56)K]J
rule I="I
rule J=[c(3)&(70)IFZ]+(137.5)'(0.995)
rule K=[A][B]
rule A=[+A{.].C.}
rule B=[-B{.].C.}
rule C=gC
#leaf
rule L=c(8)[M][N]
rule M=[+(15)M{.].O.}
rule N=[-(15)N{.].O.}
rule O=ggO
#end
72L-System厨 :2015/06/13(土)22:54:05 ID:TVd
           '⌒)
           / /
            /          |\.   /|
          i  i          | 、\/ , j∧
          |  |          | {.  ∨∨ }_
          i !            、   }/     \/|
          {  {           \∨〃 \  _ |    やべーちょーたのしー
       (⌒ヽ'、 ,ゝ-‐…‐-  ,,__ . ⌒{人"  ̄  \ {
          } }>'´            }  \      " 〉
       {               ∧ \,ニ=‐ァ‐ <
       ゝ ..,_            〈  〈 丶.   / \  \
           \        \ \_,へ//   \  ,
            /     -‐ァー=ニ(_ノ   ∨     (_ノ
          {     _,,..ノ        
          ノ  厂              
         (__/                  
┌───────────────────────────────┐
│次は、「The Algorithmic Beauty of Plants」の92ページ、fig 3.19、fig 3.20 を.|
│参考に >>63 の上の葉パーツを葉に、>>59 の七角形を花弁に応用して  .|
│ライラックを作ってみた                               .|
│ttp://ja.wikipedia.org/wiki/ライラック                        .|
│                                             .|
>>59の七角形だけみると人工物なんだけど、↓だと結構いいかも     .|
│L-System なら再帰的に自動で生成できるけど、こういう細かいパーツが .|
│たくさんあるものをちまちまCGにしてたら発狂ものだろうなw         .|
└───────────────────────────────┘




73L-System厨 :2015/06/14(日)06:57:52 ID:vuD
  ,..-―-、
  i  .ルハ、 } L-System 4 の ls ファイルで書くと
  | l ゚ ヮ゚ノ!
  |__lノヌ7ヽ|
  ノ_zュ__}

#start
#L-System 4, lilac
#The Algorithmic Beauty of Plants p.92 fig 3.19
11 # recursion depth
60 # angle
50 # thickness as % of length
#axiom
[&L][%&L]AK
#rules
A=[->I[>(18)w>(90)w>(90)w>(90)w]][+>I[>(18)w>(90)w>(90)w>(90)w]]B>(90)A #A=[->K][+>K]]B>(90)A
#decussate branching pattern
B=FFC
C=FFD
D=E[-FFFFA[I>(18)w>(90)w>(90)w>(90)w]][+FFFFA[I>(18)w>(90)w>(90)w>(90)w]] #D=E[-FFFFAK][+FFFFAK]
E=FFE
I=Fc(9)?F!
#flower
K=[I[>(18)w>(90)w>(90)w>(90)w]]
w=[c(10)^F][c(9)&(72)-(22.5){-(30)ff+(30)f+(30)f+z-(90)|-(90)z+f+(30)f+(30)ff}]
#leaf
L=F&(3)F&(3)F&(3)F&(3)F&(3)F&(3)[M][N]
M=[+(15)^(1.5)M{.].O.}
N=[-(15)^(1.5)N{.].O.}
O=ggggO
#f=_ # removes all flower leaves except those of the last recursion
@
#end
74L-System厨 :2015/06/14(日)07:03:48 ID:vuD
  ,..-―-、
  {  ノiハ、 } Lparser v2.1 で同様に ls ファイルを書くと
  lw! ゚ ヮ゚ノj
 8Uヾネノ]lつ
  <王王ハ 12の置換規則で>>72が作れると考えると L-System を使ったプロシージャルな自動生成は
   しU   効率いいですよね

#start
#Lparser v2.1, lilac
#The Algorithmic Beauty of Plants p.92 fig 3.19
recursion 11
angle 60
thickness 50
shape 1
switch_yz 1
#axiom
axiom c(8)[&L][%&L][&L][%&L]AK
#rules
rule A=[->I[>(18)w>(90)w>(90)w>(90)w]][+>I[>(18)w>(90)w>(90)w>(90)w]]B>(90)A #A=[->K][+>K]]B>(90)A
#decussate branching pattern
rule B=FFC
rule C=FFD
rule D=E[-FFFFA[I>(18)w>(90)w>(90)w>(90)w]][+FFFFA[I>(18)w>(90)w>(90)w>(90)w]] #D=E[-FFFFAK][+FFFFAK]
rule E=FFE
rule I=Fc(7)?F!
#flower
rule K=[I[>(18)w>(90)w>(90)w>(90)w]]
rule w=[c(3)^Z][c(7)&(72)-(22.5){-(30)ff+(30)f+(30)f+z-(90)|-(90)z+f+(30)f+(30)ff}]
#leaf
rule L=F&(3)F&(3)F&(3)F&(3)F&(3)F&(3)[M][N]
rule M=[+(15)^(1.5)M{.].O.}
rule N=[-(15)^(1.5)N{.].O.}
rule O=ggggO
#f=_ # removes all flower leaves except those of the last recursion
#end
75L-System厨 :2015/06/14(日)07:36:36 ID:vuD
                   ´ ̄    ̄ ̄`ヽ ∧
                /                  ` )__
                 ´      ハ           ヽ`ゝ
           /        ハ 、          ヽ
          ノ ,     l  /  l {ヽ \           l
           ∠-ィ      ハ__レ  ヽ\\ \ 、      l
           '      l ィl´/    ヽヽ ̄ヽ ̄ヽ       l
             { l   イ ハl     \二二_ ヽヽ     |
            iハ     ハl           {:::::てィヽ l ハ   !
           ハ r‐y 、二二二     辷::::り  l l  }  │
            / ┘┘ノ ) ̄´        xw l l ノ  .!
             /    /フ              l l/    |
            //       /   _   ⌒ヽ  ,l /       ハ
          / \  7 ̄ゝ、__マ___ノ ´ レ7ー 、    ハ
       イ     \ハ彡´  -‐'´ ̄    `ヽ、 /   ヽ  l ヽ
        / l     >´_             _ \     '   !  ヽ
      /  \  //. . . / }       /. . .ヽ ヽ   }  l   \
      '、     >´ /. . . . ./        i {. . . . ', ヽ  j   l    `
      ヽ   / /. . . . ./ /Tー─-- ┬! {. . . . .} }   ,   ヽ
       \__{  `ー一 ´ イ {     / { ゝ─‐´ }  イ    ハ
         {     / ゝ_!       ! {      ノ ハ   ハハ
             ̄ ー‐イ    {     {  `ー‐--─′/ l   ハ !
┌─────────────────────────┐
│おはようございます                         .|
│最後に、「The Algorithmic Beauty of Plants」の72ページ、 .|
│fig 3.4 を参考に >>63 の上の葉パーツを葉に、>>66 の上の.|
│花パーツを花に応用してスズラン?を作ってみたけど    .|
│ttp://ja.wikipedia.org/wiki/スズラン                .|
└─────────────────────────┘




76L-System厨 :2015/06/14(日)08:38:46 ID:vuD
  ,..-―-、
  {  ノiハ、 }
  lw! ゚ ヮ゚ノj L-System 4 の ls ファイルで書くと
 8Uヾネノ]lつ
  <王王ハ 花や葉が次々に生成されるような構造は L-System 向きですね
   しU
#start
#L-System 4, lily of the valley
#The Algorithmic Beauty of Plants p.72 fig 3.4
25 # recursion depth
7 # angle
100 # thickness as % of length
#axiom
>(90)??N!![&(40)L][%&(35)l]<(80)c(3)FFJa
#rules
a=b
b=I[&(90)+(30)K]d
d=I[&(90)-(30)M]a
N=FFN
#flower
K=Dc(12)[p>(72)p>(72)p>(72)p>(72)p]c(10)E # 5 petal elements on a branch
M=Hc(12)[p>(72)p>(72)p>(72)p>(72)p]c(10)E # 5 petal elements on a branch
#
p=[&(90)[A]+(72)[B]] # one petal
#
A=[^gA{.]. # first 'curved line'
B=B^.g.} # second 'curved line'
#
D=t(.05)Zt(.05)ZD
H=t(.1)Zt(0.1)ZH # branch
E=FE
#
I=&(.25)FI
J=FFJ
#leaf
l=m
m=n
n=L
L=c(1)[P][Q]
P=[+(2)^(0.5)P{.].O.}
Q=[-(2)^(0.5)Q{.].O.}
O=""""gggggg''''O
@
#end
77L-System厨 :2015/06/14(日)08:39:04 ID:vuD
  ,..-―-、
  i  .ルハ、 }
  | l ゚ ヮ゚ノ! Lparser v2.1 で同様に ls ファイルを書くと
  |__lノヌ7ヽ|
  ノ_zュ__}
#start
#Lparser v2.1, lily of the valley
#The Algorithmic Beauty of Plants p.72 fig 3.4
recursion 25
angle 7
thickness 100
min_thickness 7
shape 1
switch_yz 1
#axiom
axiom c(8)>(90)??N!![&(40)L][%&(35)l]<(80)c(8)FFJa
#rules
rule a=b
rule b=I[&(90)+(30)K]d
rule d=I[&(90)-(30)M]a
rule N=FFN
#flower
rule K=Dc(15)[p>(72)p>(72)p>(72)p>(72)p]c(3)E # 5 petal elements on a branch 1
rule M=Hc(15)[p>(72)p>(72)p>(72)p>(72)p]c(3)E # 5 petal elements on a branch 2
#
rule p=[&(90)[A]+(72)[B]] # one petal
#
rule A=[^gA{.]. # first 'curved line'
rule B=B^.g.} # second 'curved line'
#
rule D=t(.05)Zt(.05)ZD
rule H=t(.1)Zt(0.1)ZH # branch
rule E=FE
#
rule I=&(.25)FI
rule J=FFJ
#leaf
rule l=m
rule m=n
rule n=L
rule L=c(8)[P][Q]
rule P=[+(2)^(0.5)P{.].O.}
rule Q=[-(2)^(0.5)Q{.].O.}
rule O=""""gggggg''''O
#end
78L-System厨 :2015/06/14(日)10:15:31 ID:vuD
   /  ヽ
  .,'     ',
  |  .イ   |        ≠≠
  |  .エ  .|                                 , 、
  |  |   L,         />  ,                   /  ヽ
  |  |  ┌  , 、      ./     /丶                 /    ',
  |  イ   .|  ( u'γ 、   /     /:::::::/           ≠≠   j  イ  i
  ヽ     j   `く /  ''/_    j:::::::/        _       |  エ  |
   ヽ_ ノ     ` 、  X ハ'' t‐t__〉 )) , <     ',     |   |   |
                   〉´^しJ`   \   く::::ヽ     ',   ⊂  |  |
               /      ト、 /ヽ,  ヽ::::ヽ     ',   |  イ  |
              /       | \ / ヾ'' γvL -x-、i 〉   ヽ    /
                `t―‐-- 、_ ゝ  `'wz´   幺∨ 〉 \   ヽ_ /
               |士|士|士∧  ((  ` rt      | / 7、 ))
               'r‐t―‐rt―  _    j |       | `/∪
               | |   ', ヘri彡`   `|         l
               L.j   `''´      /-        |
               j j          <z、_____〉
               し’
┌──────────────────────────────┐
│形で雰囲気は変わるのか?                           .|
│例として>>45 のホンダモデルで作った3番目の樹形モデルに二種類の .|
│葉っぱを生やして比較してみたいと思います                 .|
│葉っぱは>>59 の 三角形と六角形の二種類                 .|
│                                            .|
│近景だと結構印象変わるかもしれないw                    .|
│近景ならリアルに、遠景なら多少雑でもOK この辺は絵画と同じ?   .|
│                                            .|
│Lparser v2.1 の abop 1.ls を流用して作るだけなので ls ファイルは   .|
│省略するよ                                     .|
└──────────────────────────────┘






79L-System厨 :2015/06/14(日)10:44:50 ID:vuD
                    ___
                ,..:::<::::::::::::::::::::::::::::>..、
              /:::::::::::::::::::ハ:::::::::::::::::::::::::::::::ヽ、 ト,
            /:::::::::::::/|::::/ !:::h::::::::::::::::::::::::::::::V::)
           /::::::/:::/::/ !::/  ',::|ヽ::ヘ:::::::::::::::::::::::::::':ヽ
             ∧::::,':::>,'、_∨   V ヽ|厶イ:::::::::::::::::::ヾ`
          i:::::::::|:/ ソ―、     ̄-‐-、ヽト、:::::::::::: ::: |
          |:::::::::|' / /⌒C     /⌒C ヽ',〉、:::::::::::: : |
          Vl::::::|.  {::::::::}      {:::::::::} ! {:::::/.ヽ:::::|   これは...
           VⅤ  ゝ::::ノ       ゝ::::ノ   |::::∧`}:::::|
               / xxx ¨        ¨ xxxし|::∧'ノ :: |   メカニカルです
              (  し          _    |:/::´:::::::::|
      ,  ---  ミ 、    .r―:::::::'':::::::::)  /::V:::::::::: : :|
    ,ィ<:;:;:;:;:;:;:;:;:;:;:;:;:;:;>ミ ,、 ゝ::::::::::::::::彡<幺:::::::::::::::: ::: |
   〈:;:;:;:;:;:;:;:;>‐ゥzzz、:;:;:;:;ヽ :::: フ', ヽ-<´./ / ∨:::::::::::: :: |
    レ⌒ミ,.) (__ム;⌒ヾマ、:;:;:;:∨ .〈 Ⅵ:;:〉V  /  .∨::::::::: : |
   にl|||||l==zl||||||l==== i:;:;:;:;h/ < V;;У l´    .∨::::::::::|
  ,/て ` ´ |  ` ´ ‐っz、|:;:;:;h、ヾ、 ` `'<   || ./ ∨:::::: |
 n'<三マニ _''‐-、,,,,,z三リ:;:;:;{ヽ .}  \     | | /  ∨:::::|
. ぅh;:;r、゙''―------―:;:;´:;:;n,ミ` /   |\    ||/   ∨:: |
. ぃ|:;:;:ヾ〃ぃ三三ち:ヽ ヽい:い∨   .|  \   |     ',::::|
┌────────────────────────────┐
│形で雰囲気は変わるのか? もうひとつ                 .|
>>72 ライラックの花弁を >>59 の七角形から菱形に変えてみると?.|
│                                         .|
│菱形花弁のほうは、はかせが習作で昔作ってて七角形で花弁   .|
│できるじゃんwってことで今回リメイクしたものだから仕方ないねw  .|
└────────────────────────────┘




80L-System厨 :2015/06/14(日)11:13:40 ID:vuD
     ,,  ―――--- 、
      /:.:.:.:.:.:.:.:.:.:.:.:.:.:.:.:.:.:.:.:.:.\
     /:.:.:.:.:.:.:.:.:.:.:.:.:.:.:.:.:.:.:.:.:.:.:.:.:.:.: ',
    ./:.:.:.:.:.:.:.:.:.:.:.:.:.:.:.:.:.:八:.:.:.:.:.:.:.:.::.:',
    i:.:.:.:.:.:.:.:.:.:.:.:.:.:.:/i:./ ハ::Λ:.:.:.:.:.:.',       ,, --―― ,,
    |::.:.:.:.:.:.:.:.:.:/-ヤ//   V-夂:.:.:.:.:.:|     /       \
    |:.:.:.:.:.:.:.:.:ハ/ l/       V:.:.:.:.:|    /          \
    |:.:.:.:.:.:.:.::|           〉:.:.:.ン   /            ',
    |:.:.:.:.:.:.:.:.| ミ≡≠   ミ≡=_|:.:.:.:|    i              ',
    |:.:.:.:.:.:.:.:.|xx        xx|:.:.:.:|    |    kumomadori   |
    |:.:.:.:.:.:.:.::|           i:.:.:.:|    .|              .|
    从:.:.:i:.:.:.:ト  ( ̄~~マ   イ:.:.:.:/    . |--,,            .|
     ヾ 小 /\ ̄  T从ノ川リ  .   ..',  \         ./
      ,,-- T\  X  〉 >l へ    .   '    .\      ./
    ./\ . |\ < o .〉 ./ |  |\       \   ヽ    /
   ./   .|   | ..\\/ / .|  |  i     ノ^〉 r、 . ヽ,,,/
   i  l | | ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ |  .|    //⌒ 〉  ̄
   |  V |   kumomadori   .V |   . | <⌒ .ノ
┌────────────────────────────┐
│最近暑くなってきましたね  春から初夏にかけて色々な花が    .|
│咲いているので L-System のモデルになってもらってます      .|
│                                         .|
│植物、特にリアルな草本を作るためには                .|
│分枝:枝の分かれ方、単軸状分枝か仮軸状分枝か?        .|
│ttp://ja.wikipedia.org/wiki/分枝_(生物学)                 .|
│花序:花の付き方、総状花序か集散花序か円錐花序かなど     .|
│ttp://ja.wikipedia.org/wiki/花序                      .|
│葉序:葉の付き方、互生か対生か輪生かなど             .|
│ttp://www.biol.tsukuba.ac.jp/~algae/BotanyWEB/phyllotaxis.html  .|
│の3つに気をつければいいと思っています                .|
│                                         .|
│「The Algorithmic Beauty of Plants」の3章               .|
│Developmental models of herbaceous plants              .|
│は分枝や花序を L-System でどのように表現できるかについて  .|
│述べています                                 .|
│                                         .|
>>75 のスズランは総状花序、>>72 のライラックは円錐花序を   .|
│L-System モデル化したものですね                   .|
│次回はこの辺りをもう少し詳しくやれたらな~と考えています     .|
└────────────────────────────┘
81L-System厨 :2015/06/21(日)01:14:24 ID:r0Z
            , - ´"”~”"'' ‐ 、
          , "               ヽ、
        ,ゝ'          ハ /、、  ヽ
       ノ'        ./ 从 ./ !.,' ヽリ、.   i
       ,′       ノ iノ-.、{ iノ   , -、リ、 l
       i        ソ ,' ,.‐..、   ' ,...、ヽ. l
       l    , i   l 、 i:::::::J.    i::::J 'liソ
      l.   l l   l   辷:ソ    辷ノ .lノ
      l   ‘、_l   l ""        ""~,
      l      l   l  ,'~""'''' ー‐ァ  ,.'
       l   ,.'".l   .l.、.       ソ ., イ
        l  ./, ‐ .ゞ、. !、゛' ー‐-,‐ '"/、l
       l ./'     ヽ l \ /l   /  丶
       l/:l      .l从、//:::::l/V     l
      /.:::l      l\ ゝ丶::::/  l´  l
┌─────────────────────────┐
>>80 の前に木の生成について進展があったので報告です .|
│木の生成に関する論文を幾つか読んで            .|
│・枝分かれにはランダム要素が必要              .|
│・葉っぱもリアルな方が良い                   .|
│という結論になった気がするので>>43にランダム要素を   .|
│加えてみましたけど                        .|
└─────────────────────────┘
ls ファイルの置換規則=rule は
A = ~(rd)F[ &( a0 ) '( r2 ) !( wr ) B ] >( c ) '( r1 ) !( wr ) A
B = ~(rd)F[ -( a2 ) '( r2 ) !( wr ) $C ] '( r1 ) !( wr ) C
C = ~(rd)F[ +( a2 ) '( r2 ) !( wr ) $B ] '( r1 ) !( wr ) B
ここで
~:X,Y,Z軸に対してランダムに回転する
 記号の後ろに(x)を付けると、最大回転角度を x としてランダム回転する
rd:ランダム回転角度 今回は5で固定

参考文献
J. Bloomenthal, "Modeling the mighty maple", in: Proceedings of SIGGRAPH '85, San Francisco,
California, July 22?26, 1985, Computer Graphics 19 (3) (1985) pp. 305?311, ACM SIGGRAPH, NewYork.
ttp://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.88.7659
右のpdfアイコンでpdfの論文ダウンロードできます

J. Weber, J. Penn, "Creation and rendering of realistic trees", ACM SIGGRAPH, pp. 119-127 (1995) 4.
ttp://www.cs.duke.edu/courses/cps124/spring08/assign/07_papers/p119-weber.pdf

で、↓上の図は >>45 の1番目、下の図は >>45 の3番目...>>78 と比較してみてね






82L-System厨 :2015/06/21(日)11:50:20 ID:r0Z
               _ ____
           , . : ´ : : : : : : : :.`: : 、
            /. :/: /:: :/: :i : : : : : : : \
       /: /: /: / l:∧:.:.|\: : : : : : : :.\
      /: : :/: ィ:T  / ヽTTメ、: : : : : : : : '.
      i: : /: / l/       \|ヽ: : : : : : : i
      |: /:〃 rテ      ト 下ヽ}: : : : : : : : :|
      |/: :i  ヒり     ヒ。ノ ノ : : : : : : : : :.|
       : , ' ' '      ' ' ' 'i: : : : : : : : :.l
        i {               |: : : : : : : : :l
        |:.ト、   r っ       {: : : : : : : :.:l
        |:.i.:.丶        イ: : : : : /:.:./
        |:.l: : : : :>=<   |: : : ::イ:イ
       ヽ: :/VV:: :_ノL.   ´ V:V:V´  _ __
           , イ/c `ヽ   イ  \//     \
         , イ |    ///   /\ /⌒ヽ   ヽ
       // / i |  //  /   /  \: : : : }  }
        //   ̄ ̄  ̄ ̄ ̄    /    l: ノ:ノ  /
        //             /       l ̄  /
┌─────────────────────────┐
>>81 木も結構それっぽくなりますね               .|
>>81 の二つ目の課題である葉の形も>>66の課題と合わ  .|
│せてある程度解決しそうです                   .|
│「The Algorithmic Beauty of Plants」の122ページ、fig 5.4 a .|
│が正にそれで、この方法なら図の"starting point"を基点に .|
│ハート型だろうが八手だろうが作れるはずです        .|
└─────────────────────────┘
>>81の上図の葉、三出複葉は
axiom L
rule L={[+(70)g.][+(60)gg.][+(40)ggg.][+(30)gg.][+(15)ggg.][gggg.][-(15)ggg.][-(30)gg.][-(40)ggg.][-(60)gg.][-(70)g.]}
下の図、広楕円形?は
axiom L
rule L={[+(70)g.][+(60)gg.][+(40)ggg.][+(30)gggg.][+(15)ggggg.][gggggg.][-(15)ggggg.][-(30)gggg.][-(40)ggg.][-(60)gg.][-(70)g.]}
複雑な形を再帰無しで作っているのでかなり見辛くなってますがw






83L-System厨 :2015/06/21(日)22:57:24 ID:r0Z
  ,..-―-、
  i  .ルハ、 } L-System 4 で描画すると何故か葉っぱが白っぽくなって配置が確認しづらいので
  | l ゚ c゚ ノ! Lparser v2.1 の ls ファイルのみですけど
  |__j´丈 d| それと "~"の欠点として乱数の種が設定できないのでランダムさが制御できません
  ソ_zュ__} >>81 の画像と同じものはもう作れないかもしれない
>>81の上の木々
#start
#Lparser v2.1, maple tree?
#The Algorithmic Beauty of Plants p.56、fig 2.6a、p.57、table 2.1a
recursion 12
angle 45
thickness 20
shape 1
switch_yz 1
#axiom
axiom [>T]&(90)ffffffffff^(90)[>>U]&(90)+++ffffffff^(90)[c(12)FAL]
#rules
#branch
rule A=~(5)F[&'(.6)!BL]>(137)'!(.9)A
rule B=~(5)F[+'(.6)!(.9)$CL]'!(.9)C
rule C=~(5)F[-'(.6)!(.9)$BL]'!(.9)B
#leaf
rule L=[~(10)t(0.3)c(8){[+(70)g(.1).][+(60)g(.2).][+(40)g(.3).][+(30)g(.2).][+(15)g(.3).][g(.4).][-(15)g(.3).][-(30)g(.2).][-(40)g(.3).][-(60)g(.2).][-(70)g(.1).]}]
#delay
rule T=U
rule U=c(12)FAL
#end
>>81の下の木々
#start
#Lparser v2.1, tree sample
#The Algorithmic Beauty of Plants p.56、fig 2.6a、p.57、table 2.1c
recursion 12
angle 45
thickness 20
shape 1
switch_yz 1
#axiom
axiom [>T]&(90)ffffffffffffff^(90)[>>U]&(90)+++ffffffffffff^(90)[c(12)FAL]
#rules
#branch
rule A = ~(5)F[&'(.8)!BL]>(137)'!(.9)A
rule B = ~(5)F[-'(.8)!(.9)$CL]'!(.9)C
rule C = ~(5)F[+'(.8)!(.9)$BL]'!(.9)B
#leaf
rule L=[~(10)t(0.4)c(8){[+(70)g(.08).][+(60)g(.16).][+(40)g(.24).][+(30)g(.32).][+(15)g(.4).][g(.48).][-(15)g(.4).][-(30)g(.32).][-(40)g(.24).][-(60)g(.16).][-(70)g(.08).]}]
#delay
rule T=U
rule U=c(12)FAL
#end
84L-System厨 :2015/06/21(日)23:42:33 ID:r0Z
        /        ` ヽ、
      (V        ∧      \
     /       ハ / ヽ ハ    ヽ
      ⌒      ⌒///  ヽi⌒ヽ   ヽ
      /     /|/__レ    V__ヽ }    '
      |    //rァヽ    'rァ 、V  ハ }
      |   | | { {:r´:}   {:r´:} l l  ハ
      |   / ! !  弋ソ    弋ソ  レ イ
      |   | |""         "" lレ !
      |  `'| |、  /  ̄ ̄ ヽ   ノj |
      |   V ` ゝ__ ノィ´ V  ′
      |     /〈 \/ヽ\    l
     l   //  ∨、:.:.∧〉 l\ ,′
     |   /   ̄7 ∨:.:.∨ <  ヽl
     | /    \  ヽ:./ /   ヽ
     l l l l    `ヽ´ ´     ハ
       V  l ,′            | l
┌─────────────────────────┐
│草本の生長モデルについて                    .|
│「The Algorithmic beauty of Plants」の3章を読むと      .|
│・Monopodial inflorescences:単軸分枝の花序         .|
│総状花序                              .|
│・Sympodial inflorescences:仮軸分枝の花序         .|
│集散花序、複集散花序、さそり型花序             .|
│・Polypodial inflorescences:多軸分枝の花序?        .|
│円錐花序                              .|
│・Modified racemes:多様な総状花序              .|
│散形花序、穂(すい)状花序、肉穂(にくすい)花序、頭状花序 .|
│                                    .|
│みたいな感じに分けてる気がする  で、植物の各パーツを .|
│K:花(ポーランド語:kwiat)、L:葉っぱ(leaf)、I:茎(internode).|
│という記号に置き換えてそれぞれの花序をモデル化してるっ.|
│てところかな?                           .|
│                                    .|
│はかせのレベルだと総状花序と集散花序、さそり型花序  .|
│くらいしか実現できないかもしれない              .|
│それと、草や枝先のモデル作成になるので木だけ興味ある .|
│人には関係無いかもしれないので注意してください      .|
└─────────────────────────┘
85L-System厨 :2015/06/21(日)23:59:21 ID:r0Z
             '::::::::::::::::;ィ::::::∧:::::::::::::::::::::::::::::::ヽ
           /:::::::::::::::::/ |::::/  :::::|ハ:::::::::::::::::::::::::::.
.           ':::::::::::::/::;′|::/   V{、ヘ:l、:::::::::::::::::::::l
          |::::::::::::ハ:{ 斗{´    ヽ>ト\{V:::::::::::l
       r 、   |::::::::::::}イ´//ハ    //ハヽ |::::::::::::l     , 、
       | |  /Y::::::〈 { {///}    {///} } !::::::::::::!  r 、| |
. (\   | | ./ /!|:::::::| 〉 ∨/ノ     ∨/ノ 、 l::::::::::::l | | | | ./Y
  \\__j  、/ / |:::::::| >r', , ,      , , , ゝノ ;:::::::::::::!  | |_| | / /
   \      }  レ、リ   ┌───┐   /:::::::rくリ  j     ` // )
(二二´     `´ ,ノ个::...  |      |   ./:::::::从 \/     ` /
     ',   /´  /  \{\{、≧=‐--‐=≦'  }/レ'  ヽ   ヽ   /
   r‐ヘ    イハ   \ \    / /     ゝ.   、 / 、
   { { |    レ' }  -─-\ ` ─ ´ /      /  八}    イ } }
    、ヽ|  / /: : : : : : : ヽ ̄ ̄ ̄| |     /  /  \  j/ /
┌──────────────────────────┐
│はかせ~L:葉っぱ(leaf)、I:茎(internode)は英語なのに     .|
│K:花(ポーランド語:kwiat)はなんでポーランド語なんですか? .|
│わたし気になります!                         .|
└──────────────────────────┘
86L-System厨 :2015/06/22(月)00:00:01 ID:0Cu
                                  ,...,ィ-、
                                 / j  |´゙i
              _  _              / ,j  i  ト、
           , - ´      ` - iヽ       rx,/  j  j  j |
        /     ∧         !-、    j  !   !  !  ! !
          /    /! / ! |、 、     -゙    ノ  ! - 、   ゙ j
       /   ,__/ | /  !. | ヽ レィ    i   ,.イ  ヽ   ` 、 ノ
      j     /レ≧i、  ヽレ≦ヽi、   i  / !    !ヽ    j
      i  i !,/ィェ゙   `クケ,`ヽヾ   | /  i     ヽ    j
      |,、 iレ゙ i f゙Uヘ    f゙iUヘ | j j- , /|   ! 、      ノ
       Yキ ! ゙ 弋夕    弋夕 ´ ! !ミ/゙ |   ヽ`   ,.-‐ ´!
        !、!| ///       /// j j /  {    ヽ_,/   /
        | ゙i !    r----‐‐‐ 、  jノ´   ヽ    \  ノ/
        | V 、  !      ノ,. ィ ´     ヽ      `´ノ
        |  /`i゙゙゙i`x―,xァ´ノ /||      ヽ、__/´
        | /  ノ {,イ‐ヘ/ く__ i !i       _, - ´
        !´ !   `フヽ }-{/ //  |   _, -ァ゙´
       /   !|   \ ヽ //       /!
      /     !    \゙´        ´i  |
     / _, -‐´|               !!  |
   /       !     、          i   |
 ,イ´       |     |          !  |
┌───────────────────────────┐
│「THe Algorithmic Beauty of Plants」著者のPrusinkiewiczセンセ .|
│がポーランド人だから~ それとflowerのFは線分を引く記号と  .|
│として L-System で使用済みだからもう使えないけど~      .|
│ラテン語だとflos、Lindenmayerセンセの故郷ハンガリー語だと  .|
│virag だから合ってる気がする~                   .|
└───────────────────────────┘
Przemyslaw Prusinkiewicz
ttps://en.wikipedia.org/wiki/Przemys%C5%82aw_Prusinkiewicz
87L-System厨 :2015/06/28(日)11:59:15 ID:MgL
            /        `丶、
          」∨               ヽ
          7                 '.
          /        ノ| ∧ `ト   N|   っ
.          /N      イ/ |/  ∨| ∧  |  っ
.        〃 Y⌒i  Ⅳ∩    ∩  }/V    -=ニ二三三三三
       /   {{{ |  | ∪    ∪ {{-=ニ三/ ̄ ̄`'く>三三三
         /ゝ _|  | ''       '' 人.三三|(‐~~‐)| |三三三
      /  厶-=ニ | :八‐-(_:::::::⌒)<∧ノ三三| ー--‐' |_|三三三
    -=ニ二三三三三\_,,,フ三三三三三三三三|  <・ )  「 三三三
二三三三三三三三三三三三三三三三三三ニ圦  {__>,,ノ三三三
三三三三三三三三三三三三三三三三三三三ニ≧===≦三三三
┌────────────────────────────┐
>>84 で書いてた花序モデルを「The Algorithmic Beauty of Plants」 .|
│から抜粋しま~す                              .|
│記号はω:初期状態=axiom、p1,p2,p3,...:置換規則=rule、      .|
│I:茎、K:花、L:葉、^l:同じ記号がl個続く、[]:プッシュとポップ >>21 .|
│その他a,b,A,B,Cなどのアルファベット:置換文字            .|
│                                        .|
│単純化したモデルを一気に羅列するので参考程度にしかならない .|
│かもしれない でもこういうの日本語で他にやってくれる所無いから.|
│しょうがないね                                .|
└────────────────────────────┘
それぞれの花序の例の参考
花序
ttp://www.biol.tsukuba.ac.jp/~algae/BotanyWEB/inflorescence.html
88L-System厨 :2015/06/28(日)12:09:07 ID:MgL
  ,..-―-、
  {  ノiハ、 }   総状花序は世代が進むと、I[K]I[K]...Aとなるので
  lw! ゚ ヮ゚ノj   単軸上に花が連なっていくイメージですね
 8Uヾネノ]lつ 
  <王王ハ   オープンは無限に花が付く、クローズは頭頂で花が付き終わる
   しU    モデルだと思われます

単軸分枝の花序
単純花序モデル:チューリップ、クロッカス
64ページ、式(3.1)
ω : a
p1 : a → I[L]a
p2 : a → I[L]A
p3 : A → K

総状花序
単一の総状花序(オープン)モデル:スズラン、ナズナ
71ページ、式(3.3)
ω : a
p1 : a → I[L]a
p2 : a → I[L]A
p3 : A → I[K]A

単一の総状花序(クローズ)モデル:リンゴ
75ページ
ω : a
p1 : a → I[L]a
p2 : a → I[L]A
p3 : A → I[K]A
p4 : A → K
89L-System厨 :2015/06/28(日)12:17:43 ID:MgL
  ,..-―-、 
  {  ノiハ、 }  しまった...
  lw! >__<ノj  記号だけだとイメージし辛いと思うので
 ⊂}8- ]lコ= ・ ・ ・ ・ ・ ・
  <王王ハ  The Algorithmic Beauty of Plants の図も付記します
   しU
単軸分枝の花序
単純花序モデル:チューリップ、クロッカス
The Algorithmic Beauty of Plants、64ページ、式(3.1)、fig 3.1
ω : a
p1 : a → I[L]a
p2 : a → I[L]A
p3 : A → K

総状花序
単一の総状花序(オープン)モデル:スズラン、ナズナ
The Algorithmic Beauty of Plants、71ページ、式(3.3)、fig 3.3
ω : a
p1 : a → I[L]a
p2 : a → I[L]A
p3 : A → I[K]A

単一の総状花序(クローズ)モデル:リンゴ
The Algorithmic Beauty of Plants、75ページ、fig 3.7
ω : a
p1 : a → I[L]a
p2 : a → I[L]A
p3 : A → I[K]A
p4 : A → K
90L-System厨 :2015/06/28(日)12:21:45 ID:MgL
  ,..-―-、
  i  .ルハ、 }
  | l ゚ ヮ゚ノ!
  |__lノヌ7ヽ|
  ノ_zュ__}

単軸分枝の花序
複合総状花序(オープン)モデル:ミント
The Algorithmic Beauty of Plants、76ページ、式(3.4)、fig 3.8a
ω : a
p1 : a → I[L]a
p2 : a → I[L]A
p3 : A → I[L][b]A
p4 : A → I[L][b]B
p5 : b → I[L]b
p6 : b → I[L]B
p7 : B → I[K]B



複合総状花序(クローズ)モデル
The Algorithmic Beauty of Plants、79ページ、fig 3.8b
ω : a
p1 : a → I[L]a
p2 : a → I[L]A
p3 : A → I[L][b]A
p4 : A → I[L][b]B
p5 : b → I[L]b
p6 : b → I[L]B
p7 : B → I[K]B
p8 : B → K



複合3出総状花序(クローズ)モデル?:ブドウ、アジサイ
The Algorithmic Beauty of Plants、81ページ、fig 3.12
ω : a
p1 : a→ I[L]a
p2 : a→ I[L]A
p3 : A→ I[L][b]A
p4 : A→ I[L][b]B
p5 : b → I[L]b
p6 : b → I[L]B
p7 : B→ I[L][c]B
p8 : B→ I[L][c]C
p9 : c → I[L]c
p10 : c → I[L]C
p11 : C→ I[K]C
p12 : C→ K
91L-System厨 :2015/06/28(日)12:33:10 ID:MgL
  ,..-―-、
  i  .ルハ、 }      複合の総状花序が分枝が総状花序になっているもの
  | l_^~゚ノ! プププ
  |__l /)ヘ|      密錐花序が分枝が集散花序になっているもの
  ノ___}      となるとそれらと円錐花序ってどう違うの?

仮軸分枝の花序
集散花序
単一の集散花序(オープン)モデル
The Algorithmic Beauty of Plants、82ページ、式(3.5)、fig 3.13a、fig 3.13b
ω : a
p1 : a→ I[L]a
p2 : a→ I[L]A
p3 : A→ I[A]K

複2出集散花序(オープン)モデル:ナデシコ
The Algorithmic Beauty of Plants、83ページ、式(3.6)、fig 3.13c
ω : a
p1 : a→ I[L]a
p2 : a→ I[L]A
p3 : A→ I[A][A]K

単一の集散花序(クローズ)モデル
The Algorithmic Beauty of Plants、85ページ
ω : a
p1 : a→ I[L]a
p2 : a→ I[L]A
p3 : A→ I[A]K
p4 : A → K

密錐花序(クローズ)モデル:カリガネソウ
The Algorithmic Beauty of Plants、85ページ-86ページ、fig 3.15
ω : a
p1 : a → I[L]a
p2 : a → I[L]A
p3 : A→ I[L][B]A
p4 : A→ K
p5 : B→ I[B]K
p6 : B→ K
92L-System厨 :2015/06/28(日)12:36:55 ID:MgL
  ,..-―-、
  i  .ルハ、 }
  | l ゚ c゚ ノ!  また調べることが増えちゃったけど
  |__j´丈 d|
  ソ_zュ__}

多軸分枝の花序
円錐花序モデル:ライラック、ナンテン
The Algorithmic Beauty of Plants、86ページ、fig 3.16
ω : a
p1 : a→ I[L]a
p2 : a→ I[L]A
p3 : A→ I[L][A]A
p4 : A→ K

多様な総状花序
単一の散形花序モデル:ネギ、サクラソウ
The Algorithmic Beauty of Plants、95ページ、fig 3.22a
ω : A
p1 : A → I[IK]^n

複合散形花序モデル:ノラニンジン
The Algorithmic Beauty of Plants、95ページ、fig 3.22b
ω : A
p1 : A → I[IB]^kB
p2 : B → I[IC]^lC
p3 : C → I[IK]^m
93L-System厨 :2015/06/28(日)18:25:21 ID:lsU
                      -――-
                    ´        \
                   /           ∨}
                         /|/| │      〈
                    N イ⌒ |/l人      |
.        /⌒\           |八__,    ∨     |
      | ヽ. l\   r m、 {''    `ー'│∧    |
      | : :} |   二二二ニニニマニ{)    '' |厶ィ:  │
      | :./ j/^7 /L片{= Y≧=‐r ァ≦_〔_    |
       、_/  (((⊂ニ)≧r:i  |`'┴'´   `ヽ  |
                 ̄ー}ー'ー|ノ  |        '  |
               \  |   j           {  |
                 \>rく__,,,...∠    |/│
                     |          V八
                     |           ∨/)
                     |           〈
┌──────────────────────────┐
>>89 の単一の総状花序(オープン)モデルの例が >>75    .|
>>91 の複2出集散花序(オープン)モデルの例が        .|
│Lparser v2.1 の abop 4.ls                      .|
>>92 の円錐花序モデルの例が >>72               .|
│になります                               .|
│                                      .|
│もう一つ、単一の総状花序(オープン)モデルの例として    .|
│「The Algotithmic Beauty of Plants」の74ページ、fig 3.5 に   .|
│Capsella(ナズナ)が出てたので参考に作ってみましたけど↓ .|
│                                      .|
│上から第5世代:葉っぱだけ                     .|
│第10世代:葉っぱの数が増えた気がする             .|
│第15世代:花が咲いてきましたけど                .|
│第20世代:先に咲いていた花が枯れて実が付きました     .|
│第25世代:頭頂付近は花、その下は実がなるの繰り返し    .|
│                                      .|
│花が消せないから苦肉の策で反転させて色を枯れ色にして  .|
│ごまかしてるけどw                           .|
└──────────────────────────┘












94L-System厨 :2015/06/28(日)18:35:15 ID:lsU
  ,..-―-、
  {  ノiハ、 }  今回の ls ファイルは長いので2レスに分けます
  lw! ゚ ヮ゚ノj  置換規則=rule のそれぞれの後ろにある #p1とか#p2は
 8Uヾネノ]lつ 「The Algorithmic Beauty of Plants」ページ74、fig 3.5 の
  <王王ハ  p1、p2、...に相当すると言う意味です
   しU
#start
#L-System 4, Capsella?
#The Algorithmic Beauty of Plants, p.74, fig 3.5.
25 # recursion depth [5 10 15 20 25 30]
18 # angle
50 # thickness as % of length
# axiom
+(90)>c(3)OA
# rules
i=[&(18)uFFISjKKKK]c(3)>(137.5)Pi #p3
# forms substitutes, leaves
#leaf
L=[c(1)[{.-fW+fW+fW}][{.+fW-fW-fW}]] #p8, leaves grow in size with recursion level
# forms substitutes, flowers
#flower
K=[ccccccc[&{.+fJ--fJ}][&{.-fJ++fJ}]]>(90) #p9
#fluit
p=^(50)[c(5)[-gggg++[ggg[++g{.].].].++gggg.--ggg.--g.}]|c #p11
# 11 step delay for A(i)
A=[&(70)L]>(137.5)IB #p1
B=[&(70)L]>(137.5)IC #p1
C=[&(70)L]>(137.5)ID #p1
D=[&(70)L]>(137.5)IE #p1
E=[&(70)L]>(137.5)IG #p1
G=[&(70)L]>(137.5)IH #p1
H=[&(70)L]>(137.5)IN #p1
N=[&(70)L]>(137.5)Ia #p1
a=[&(70)L]>(137.5)Ib #p1
b=[&(70)L]>(137.5)Id #p1
d=[&(70)L]>(137.5)Ih #p1
h=[&(70)L]>(137.5)Ii #p2
95L-System厨 :2015/06/28(日)18:42:37 ID:lsU
  ,..-―-、  delay となっているのは成長の抑制とか限界を決めるのに使ってます
  {  ノiハ、 } Lparser v2.1のabop 4.ls を参考にしてます
  lw! >__<ノj 「The Algorithmic Beauty of Plants」ページ74、fig 3.5 ではI(9)a(13)とか
 ⊂}8- ]lコ= ・ ・ ・ ・ ・ ・
  <王王ハ 数字で直接指定しているのですが、L-system 4、Lparser v2.1 では
   しU  それは無理なので置換記号(アルファベット)で代用しています

# 9 delay for I(i)
I=FO #p4
O=FP #p4
P=FQ #p4
Q=FR #p4
R=FS #p4
S=FT #p4
T=FU #p4
U=FV #p4
V=FX #p4
X=F #p5
# 4 delay for u(i)
u=&(9)v #p6
v=&(9)w #p6
w=&(9)x #p6
x=&(9)y #p6
y=&(9) #p7
# 3 delay for j(i)
j=k #p10
k=m #p10
m=o #p10
o=p #p10
# 2 delay for J(i)
J=fM #p4' for flower
M=fY #p4' for flower
Y=f #p5' for flower
# 5 delay for W(i)
W=fs #p4" for leaf
s=fr #p4" for leaf
r=fq #p4" for leaf
q=fn #p4" for leaf
n=fe #p4" for leaf
e=f #p5" for leaf
@
#end
96L-System厨 :2015/06/28(日)19:16:21 ID:nWP
                  ___
             ,..ィャチ三三三三二ミぇ、
              ,.ィチ三三三三三三三三三三ぇ、
             /三三三三三三三三三Ⅵ三三三ぇ、
            /三三三三三三三三/三/ ',三三三三ぇ
          /三三三三三三ク三/ /Ⅳ  .',三三三三ミ',
          ,'三三三三ニ.>‐/フ⌒X/.   ',Ⅳl三三三三,
        ,'三三三三彡' / '  //    ',-‐ト、三三三',
         l三三三ニイ´  ,..z-.、       V lニヽ三三ヨ
       .l三三三三| /て:::::::::ト、     ,....,,、 Ⅴ|三三ヨ
       |三三三三| ':; 弋_て´     イ::::::::)ヽ ',三三リ
       |三三三三| xx  ゙゙''´       弋_て ノ ./三三リ
       |三三三三|            ゙゙'' xx/三三'
      イ三三三三|                ,'三三ヨ
       {:;:',三三三三ト,、                 }三三ヨ
   とヽ|:;:;(VWレvヾ三l`.ヽミ、 `  -      _ノ三三ヨ
   ..ヾ:;:ヽ:;:;-  -、 `'    \' ‐r==―ニ三三三三リ
  ,.:;´;:;__ヾ:;:>:´:::::::::::::ヽ     \{  ヾ' Wヾ三/|:レリ
 .':;:// ,`´::::::::::::::::::::::::::::ヽ     ` - ',>'‐- 二7
. l:;:;l:;l /:::::::::::::ヽ:::::::::::::::::::::::::ヽ.      /`''''' - ../ ヽ
. ',:;:;':;l::::::::::::::::::::: ヽ:::: |:::::::::::::::'lト、   ,.'      ,' ` 7
  -,':::::::::::::::::::::::::::ヽ::::|:::::::::::::::|.|::::::::::::7.     ,'   .,'
   |::::::::::::::::::::::::::::::: ヽ|::::::::::::::rt、::::/'     ,'   .,'
┌──────────────────────────┐
│花序の例や葉序などまだ書きたいこともありますが       .|
│書きたいことの大半は書いてしまったので一旦まとめます   .|
│                                      .|
│樹形や花序など植物の成長モデルを L-system で表せました.|
│これによって感覚的に表現していた植物を数理的に表現する .|
│ことが可能になります                         .|
│                                      .|
│樹形、花序、葉序は植物を作成するときの設計図になるわけ .|
│です 設計図を元に同じようなものを量産できますし、それを .|
│元に流用して他の物を作ったりオリジナルのものを作ったり  .|
│夢が広がりますねw                          .|
└──────────────────────────┘
97L-System厨 :2015/06/28(日)19:18:27 ID:nWP
      //,--─ ─  丶 、
     / ': : : : : : : : : : : : : : : 丶
   ∠´: : : : : : : : : : : : ,、: : : : : : : : ヽ
 /__: : : : : : : : : : : : : : : !丶: : : : : : : : ヽ
 ´/: : : : : : : : : : : : ,イ/  ヽλ: : ,: : : : ヽ
 /: : : : : : : : : : : : ノ /   'ヽ!ヽ: !、,: : : :!
 !: : : : : : : : _ヘフ─,/    ソ`-、: 、: : : : !
 l: : : : : ,: : : /:ノ __       _ ヘ: : :,、: !
 l: : : : : ,!: ! ,,;"  ゙`、   ,,:''  ゙`、 ! /`ノ
 l: : ,, ' !: ! ''    `   ''     ` ノ
 l  ! τ !: ! ,,,,,          ;;;;;;`,
 !: : : ゝ、!: !'''''    ,、_    ,、    ノ
...!: : : : : `ヘ! >、_/^''^' ` ヾ/´ `'`ヽ´
..!: : : : : : : ,'`i ´ ̄ ̄ ̄ ̄`!´ ̄ ̄ ̄`、
ノ: : : : : : /  !        !      !
!: : : : : ノ   !       .!      !
┌──────────────────────────┐
>>11 で言ってた方法論にも繋がるけど、植物を作るときは  .|
│樹形、花序、葉序などの設計図を決めておいて>>59-68>>82.|
│のような葉や花弁などの装飾品を別途作成しておきます    .|
│                                      .|
│そして、植物の進化を経るように段々複雑にしていきます   .|
│1.茎(枝)だけの L-system を作成                  .|
│2.茎(枝)と葉を付けた L-system を作成 → 樹木はここまで  .|
│3.茎(枝)と葉、花を付けた L-system を作成           .|
│これでやってみるといいかもしれない               .|
│                                      .|
│駆け足で書きなぐったので分からないところがあれば      .|
│質問してね                               .|
└──────────────────────────┘
98L-System厨 :2015/06/28(日)19:57:59 ID:nWP
               /    \
            /Speed   ⊆ニニ <|
          〈 \ Tree   ‘r―‐   \__
.            ∨〉┐、     ⊂ニ __  ヽ\
           ///入\x ´\{\ ノ ム  ∨ ヽ
            |   rく/ {\/(「)∨ |:,  } | :,二二.丶
            |   ノ     }(「)    ハ r:| ̄   |  ′   \)
          ‘.  ヽ、  〈___,/ / | ‘、‐一′  :,
          ∧  | \  ./|\__/{_/斗-\     ′
          |  :,| | V |_ノ,|-八从ハx=ミ∧       ,
          |ー‐'′|  i   / |,x=    んハYハ、     ′
            \__,ノ  |   〃んハ   V:り | :,\   |
             \    V| 从 V:り      "| ∧   !
                 ヽ   l人ハハ"    /⌒ン从: :i     :,
              ヽ   |L...... ‘ イ人| |:|    ハ 買ってね~
                     ヽ  |/  ∨:|   \:| |:!  / 
                 \   \| :L>: : :´ ̄: \    }
                  |\  | : : : : :-‐l二二二l  |
                  |ハ  ヽ| ̄: : : : : |はかせ|∨ |
                   |   |: : : : : : : : ̄「 ̄「: : V|
                   |   | : : : : : : : : : !: : :| : : : :,
                       Vl八| : : : : : : : : : : ̄: : : : : :〉
                        |: : : : : : : : : : : : : : : : :|
                           f二二¨ ̄ : : : _,,二二|
                         ノ: : : :|: : : : : : : | : : : : |
┌──────────────────────────┐
│植物CGが作りたいけど                        .|
│時間が無い人、トライアンドエラーをあまりしたくない人は    .|
│ttp://www.speedtree.com/   を試すといいかもしれない   .|
│アバターとかの映画のCGで使われてるとか           .|
│                                      .|
>>97 の "L-system を作成"という書き方だとおかしい気が  .|
│するので "ls ファイル作成"とか "L-system のスクリプト作成".|
│とか置き換えて読んでほしいけど                  .|
└──────────────────────────┘
99L-System厨 :2015/07/04(土)11:59:53 ID:iVJ
、___ノヽ._,、_ノ、__,             _ハ_
)         ゝ,          ヽ     /
ヽ         / ,,....:'" ̄:\    ノ  も ヽ._
/ |    -|-iヽ 〉.:.:.:.:.:.:.:.:.:.:.:.:.\   )  .う  /
〉 ゝ‐'   /_ノ (:;.-、:.:.:.:.:.:.:.:.:.:.:.:.:\ヽ   っ  ヽ
、 ーァ     /  〉´ノ.:.:.:.:.;:ィ'"`ヽ、.:.:ソ   ! !  (
ノ  (__   /^Lノ 、:.:.;.ィ''、 /|  ハ .\:.)      /
ヽ ー、  /\・・ (', /l Xヽl. /,__Xli ヽ}-、,.--v'⌒
〈  ‐'゙  /  \ (./ /  >l/ <` lノ.lヽ.:l
 〉 | | |   /   〉〇‐'____ .ヽOノイ/
〈 ・.・.・  /^Lノ {ヽ_〈   `ヾ! ,,.ィ':/
. )         r゙'.:.:.`''''===ィ'.:.:/   またミスったかもしれない
 },..-、,.---、,..--、f゙'.:.:.:.:.:fi.:.:.:.<、了
      /.:.:.:.:.:.:.:.:.:.:.:fjニ).:.:.:.:ヽ'ソ
     ./.:.:.:.:.:.:.:.:.:.:.:.:.:.:.:.:.:.:.:.:.:.:.:.、
┌─────────────────────────┐
│今までのレスの間違いの指摘と進展の報告~        .|
>>82 で「三出複葉」と書いてるのは「三裂葉」の間違い   .|
│そして >>82 の L-system の書き方だと L-system 4 では  .|
│問題無いけど Lparser v2.1 では葉っぱの根元が消えます .|
└─────────────────────────┘
三裂葉は
修正前
rule L={[+(70)g.][+(60)gg.][+(40)ggg.][+(30)gg.][+(15)ggg.][gggg.][-(15)ggg.][-(30)gg.][-(40)ggg.][-(60)gg.][-(70)g.]}
修正後
rule L={.[+(70)g.][+(60)gg.][+(40)ggg.][+(30)gg.][+(15)ggg.][gggg.][-(15)ggg.][-(30)gg.][-(40)ggg.][-(60)gg.][-(70)g.]}
広楕円形
修正前
rule L={[+(70)g.][+(60)gg.][+(40)ggg.][+(30)gggg.][+(15)ggggg.][gggggg.][-(15)ggggg.][-(30)gggg.][-(40)ggg.][-(60)gg.][-(70)g.]}
修正後
rule L={.[+(70)g.][+(60)gg.][+(40)ggg.][+(30)gggg.][+(15)ggggg.][gggggg.][-(15)ggggg.][-(30)gggg.][-(40)ggg.][-(60)gg.][-(70)g.]}

"{"の後に"."を付けないと Lparser v2.1 は根元=出発点を認識できないみたいだけど
なので >>83
上の木々
rule L=[~(10)t(0.3)c(8){.[+(70)g(.1).][+(60)g(.2).][+(40)g(.3).][+(30)g(.2).][+(15)g(.3).][g(.4).][-(15)g(.3).][-(30)g(.2).][-(40)g(.3).][-(60)g(.2).][-(70)g(.1).]}]
下の木々
rule L=[~(10)t(0.4)c(8){.[+(70)g(.08).][+(60)g(.16).][+(40)g(.24).][+(30)g(.32).][+(15)g(.4).][g(.48).][-(15)g(.4).][-(30)g(.32).][-(40)g(.24).][-(60)g(.16).][-(70)g(.08).]}]

に修正した方がいいかもしれない
この修正だと、 L-system 4、Lparser v2.1 どちらも同じように描画できるので以降この書き方に統一します
100L-System厨 :2015/07/04(土)12:49:32 ID:iVJ
      x             `/、
     X                -l‐         __
    -l‐    _,,.. -――--...._           /   \
       ,.ィチ三三三三ニハ三ミt,、        /       \
      //ニ/三ニイニハ.ニ/ l三三ム      .|         |
       ,'/  /ニ/ ̄/`l:/  ''Vヘ|、ミ.ハ      |  ー|‐-<   |
     iミN//ニ/'/ ,ィZt゙   ',ztヽ!.l三l!     |    | ー'゙   .|
      |三三ニ| l l三ニ|  i三ミ! } ! ハj     |    _     |
      |三三ニ|  ヾミヒソ  マZリ  !ミ!        |     ー'    .|
      |三三ニ|./// ¨    `¨///lミ!      |  _|__     .|
      |三三ニli  / ̄`''ー-、ァ  lミ!    l二_   / こ    l
     V|、ミl三ミt、 ゝ    _ ' ,,.ィ'lリ       |        l!
      ヽヾlヾlヾ,ィ ̄二ニ=/77、ソi/       \____/
      ,..-==ァt ヽ.-‐ニ/////}
     ,'::;ィZハヾミz,,_.>ィ/  ./ ト、
      l::{=/‐-、ヽ.二f_:/   ノ Vム
     、::゙l、  ヽ. / `ヽ、/_,,..-‐、゙i
      {ニ|:ヽ  |:/`ヽ、  〉 _,,.. l |
     /:;ィ:| ヽ  ./    ‐/ '"  ヽl
┌─────────────────────────────┐
>>91 の円錐花序に関する疑問に対する回答は             .|
│ttp://www.biol.tsukuba.ac.jp/~algae/BotanyWEB/inflorescence.html  .|
│の最後にありました                              .|
│円錐花序は複合総状花序で全体が円錐形のものでいいと思います .|
│                                          .|
│それと >>56-57 の3分岐樹形の一部を再現できました?        .|
│L-System 4と Lparser v2.1 のtropism vector が下向きのみなので  .|
│再現できたのは「The Algorithmic Beauty of Plants」ページ60、fig 2.8 .|
│の a と b だけですけど                            .|
└─────────────────────────────┘
ls ファイルの置換規則=rule は
A = !(0.9)F[&(a)t(e)FA]/(d1)[&(a)t(e)FA]/(d2)[&(a)t(e)FA]
F = "(1.1)F'(0.9)
ここで
a:幹の分岐角
t:>>20 の"t"と同じ、tropism vector、向性ベクトル、これを使うと大抵下にお辞儀するように変化
e:軸の曲げに対する感受性?、tでどれくらい下に垂れるかを決めるパラメーター
d1:広がり角1
d2:広がり角2

3分岐樹形のポイントは置換規則が2つだけで樹形が描けるということと
!(0.9)、"(1.1)、'(0.9)が決め打ちでいいならa、e、d1、d2の4つのパラメータだけで樹形が
決定されます
101L-System厨 :2015/07/04(土)13:21:29 ID:iVJ
  ,..-―-、
  i  .ルハ、 } パセリかな?
  | l ゚ ヮ゚ノ!
  |__lノヌ7ヽ| これで、色々な樹形が描けるね
  ノ_zュ__} Blender勉強して ttp://blender.jp/ に投稿したいけど







102L-System厨 :2015/07/04(土)19:01:52 ID:iVJ
  ,..-―-、
  {  ノiハ、 }
  lw! ゚ ヮ゚ノj  >>101 を L-system 4 の ls ファイルで表すと...
 8Uヾネノ]lつ 上の木、「The Algorithmic Beauty of Plants」ページ60、fig 2.8a
  <王王ハ  下の木、「The Algorithmic Beauty of Plants」ページ60、fig 2.8b
   しU    です

上の木
#start
#L-System 4
#The Algorithmic Beauty of Plants p.60、fig 2.8a、p.61、table 2.3a
6 #recursion depth
19 #angle
20 #thickness
#axiom
c(8)FF>(45)A
#rules
A=!(.9)F[&t(0.22)FA]>(94)[&t(0.22)FA]>(132)[&t(0.22)FA]
F="F'
@
#end

下の木
#start
#L-System 4
#The Algorithmic Beauty of Plants p.60、fig 2.8b、p.61、table 2.3b
8 #recursion depth
19 #angle
20 #thickness
#axiom
c(8)FF>(45)A
#rules
A=!(.9)F[&t(0.14)FA]>(137)[&t(0.14)FA]>(137)[&t(0.14)FA]
F="F'
@
#end
103L-System厨 :2015/07/04(土)19:02:48 ID:iVJ
  ,..-―-、
  i  .ルハ、 }
  | l ゚ c゚ ノ!  >>101 を Lparser v2.1 の ls ファイルで表すと
  |__j´丈 d|
  ソ_zュ__}

上の木
#start
#Lparser v2.1
#The Algorithmic Beauty of Plants p.60、fig 2.8a、p.61、table 2.3a
recursion 6
angle 19
thickness 20
shape 1
switch_yz 1
#axiom
axiom c(12)FF>(45)A
#rules
rule A=!(.9)F[&t(0.22)FA]>(94)[&t(0.22)FA]>(132)[&t(0.22)FA]
rule F="F'
#end

下の木
#start
#Lparser v2.1
#The Algorithmic Beauty of Plants p.60、fig 2.8b、p.61、table 2.3b
recursion 8
angle 19
thickness 20
shape 1
switch_yz 1
#axiom
axiom c(12)FF>(45)A
#rules
rule A=!(.9)F[&t(0.14)FA]>(137)[&t(0.14)FA]>(137)[&t(0.14)FA]
rule F="F'
#end
104L-System厨 :2015/07/05(日)05:27:58 ID:4nV
  ,..-―-、
  i  .ルハ、 }
  | l_^~゚ノ! プププ
  |__l /)ヘ| >>100 の例として a=30、e=0.15、d1=94、d2=132
  ノ___} に設定してランダム要素を加えるとこうなりますけど↓





105L-System厨 :2015/07/05(日)10:30:02 ID:4nV
                ,イ
                 /  |        /|
             / /  .|    ./  |
          /^l /./   .|,ヘ /   |_
            /:::::| | |i /` /:::::レ'    /:::::::`ヽ
        /:::::::廴L山_/::::::::| , ′ ./::::::::::::::::\
          /:::,--、:::::::::::::,--、::::::|   ./::::::::::::::::::::::::\
       /:::/┃ .l::::::::::/┃ ',::::|  ./:::::::::::::::::::::::::::::::::ヽ
     . /:::::l ┃ /:::::::::l ┃  |::::l,イ:::::::::::::::::::::::::::::::::::::::::::',
.    〈:::::::::::ヽ_ノ::::::::::::ヽ_ノ::::::| .|:::::::::::::::::::::::::::::::::::::::::::::`ー-、
     \::::::::::::::::::::::::::::::::::::::::::::::| /::::::::::::::::::::::::::::::::::::::::::::::::i::::::::ヽ
       >、:::::::::::::::::::::::::::::::::::://:::::::::::::::::::::::::::::::____ノ:::::::::::}
      /:::::}` ー―――一´ У::::::::|:::::::i/ ̄ ̄:::::::::::::::::::::::::/
     .|::::/    イ´   /::::::::::::::|_/::::::::::::::::::, ----一´
      ヾ       /  /::::::::::::::::ノ7::::::::::::::::::/
       \_____∠三≧=彡′ `ー―一'´
┌──────────────────────────┐
│葉序について>>88-92 の表記を参考に幾つか書いていく   .|
│ttps://ja.wikipedia.org/wiki/葉                    .|
│互生葉序・対生葉序・輪生葉序だけでもかなりの草本が作成 .|
│できるはず                               .|
└──────────────────────────┘
106L-System厨 :2015/07/05(日)12:00:52 ID:4nV
  ,..-―-、
  {  ノiハ、 } 「ようじょ」を「葉序」に変換しようとすると「幼女」が最初に来るのは
  lw! >__<ノj 勘弁してください><
 ⊂}8- ]lコ= ・ ・ ・ ・ ・ ・
  <王王ハ
   しU

互生葉序
ω : a
p1 : a → I[&(r1)L]>(r2)a
p2 : a → I[&(r1)L]>(r2)A
p3 : A → I[&(r1)L]>(r2)A
ここで、
r1:茎と葉の間の角度
r2:互生する角度、137.5 とかフィボナッチ数的にいい感じになります

二列対生葉序
ω : a
p1 : a → I[[&(r1)L]%[&(r1)L]]A
p2 : A → I[[&(r1)L]%[&(r1)L]]A

十字対生葉序
ω : a
p1 : a → I[[&(r1)L]%[&(r1)L]]>(90)A
p2 : A → I[[&(r1)L]%[&(r1)L]]>(90)A

三輪生葉序
ω : a
p1 : a → I[[&(r1)L]>(120)[&(r1)L]>(120)[&(r1)L]]>(r3)A
p2 : A → I[[&(r1)L]>(120)[&(r1)L]>(120)[&(r1)L]]>(r3)A
ここで
r3:輪生と輪生の間の角度、角度が無くてもいいし5~15程度でもいい?

四輪生葉序
ω : a
p1 : a → I[[&(r1)L]>(90)[&(r1)L]>(90)[&(r1)L]>(90)[&(r1)L]]>(r3)A
p2 : A → I[[&(r1)L]>(90)[&(r1)L]>(90)[&(r1)L]>(90)[&(r1)L]]>(r3)A

つまり、n輪生は"[&(r1)L]>(360/n)"がn個必要ということになります
107L-System厨 :2015/07/05(日)12:10:46 ID:4nV
  ,..-―-、
  i  .ルハ、 } 記号だけだとイメージしずらいかもしれないので
  | l ゚ ヮ゚ノ! 図示します
  |__lノヌ7ヽ| r1=60、r2=137、r3=15で
  ノ_zュ__} 上から、互生葉序、二列対生葉序、十字対生葉序、三輪生葉序、四輪生葉序

あと、>>106 互生葉序ミスったかも
ω : a
p1 : a → I[&(r1)L]>(r2)A
p2 : A → I[&(r1)L]>(r2)A
だね まあ、>>106 は表記の一例に過ぎないけど













108L-System厨 :2015/07/12(日)18:53:55 ID:k1J
      三                         /      \
  ニ|ニ¨ 三                       ,'        ∨
  (_   三 _,,,....--....__                ,'  ど  お  . V
   _Li_  三´:::::::::::::::::::::::ヽ      ___     .|  |  茶   .|
    lー'  三::::::::::::;ィ:::ハ::i::::::i  /l,ィ''"  、`ヽ、  .|  ぞ  を    |
   |   三::::::ハ/,.レ' 〉、:::::|∠    ハ. /ヽ 、 ヽ.  |         /
   |   三::::|  i |  ! .l lメ! l   ,レ'riレ'  ,lノlリ }  .〉        /
   |   三::::| oー'  ー゚lリ ! r'l |  l」  i」 { f  .//\____/
   |   三ヘj、_/^^^^^lノリ .l ゝl |'",.--...__ ''")|
   |   三〈 ゝ三ニ7<V/  .| l ヽ!.__'..ィ': |
   |   三、ミzy'ゞハタノ `ヽ|  /、゙fヌ_ノノヽ .|
   |   三 ¨゙t‐'゙ーr゙___l  ヽ / `L゙''"」¨/ ∨|
   |   三  んハン―l  ,ィヽ、Y¨l''ー-L、 l |
   ‐-、  .三   /|! `´:lfヽ'、f/f,ニヽ'  rォ / V
    ー'  三    }}   l ヽ._ノ、_lt::::l゙ー-|Zl,ィ'  V
 !!! 三   /l:}   }__゙ー;;f ).|:::|ノ")ー゙    V
      三rrrrュ--‐=ニ二;;;;tfjzゝfー':|";;;;¨'''ー-.......|__
      三二二二二ヽ;;;;;;;;;;;;;;;;;;;;;;L___j,,::;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ̄二ニ=-....._
┌──────────────────────────┐
│花序と葉序について説明?が終わったので、後はゆるりと   .|
│花序・葉序の設計図と花弁や葉なんかの部品を使って     .|
│L-systemで草本や低木を作って逝こうと思うけど        .|
│                                      .|
│まずは、イチリンソウ属のヒメイチゲやヒロバヒメイチゲの   .|
│ようなもの                               .|
│ttps://ja.wikipedia.org/wiki/ヒメイチゲ               .|
│ttps://ja.wikipedia.org/wiki/ヒロバヒメイチゲ            .|
│花序:単純(単一)花序、葉序:3出複葉の三輪生葉序が一回 .|
│花弁は>>59の七角形、葉は>>82の広楕円形葉の改良     .|
│かもしれない                              .|
└──────────────────────────┘




109L-System厨 :2015/07/12(日)18:59:31 ID:k1J
  ,..-―-、
  {  ノiハ、 }
  lw! ゚ ヮ゚ノj   Lparser v2.1用の >>108の一本分の ls ファイルです
 8Uヾネノ]lつ
  <王王ハ   以降も Lparser v2.1 で一本分の ls ファイルになります
   しU

#start
#Lparser v2.1
#himeichige
recursion 10
angle 15
thickness 20
shape 1
switch_yz 1
#axiom
axiom c(12)A
#rules
rule A=IB
rule B=IC
rule C=ID
rule D=IE
rule E=I[&L]G
rule G=IH
rule H=I[X][K]
#internode
rule I=~(5)FF
#leaf
rule L=&&&&&+[M]+(120)[M]+(120)[M]
rule M=^I&[++++F''N""][----F''N""]F[N]
rule N=P[~(10)c(8){.[+(40)g.][+(35)g.][+(30)gg.][+(25)gg.][+(20)ggg.][+(15)ggg.][+(10)gggg.][+(5)gggg.][ggggg.][-(5)gggg.][-(10)gggg.][-(15)ggg.][-(20)ggg.][-(25)gg.][-(30)gg.][-(35)g.][-(40)g.]}]S
rule P=""Q
rule Q=""R
rule R=""
rule S=''T
rule T=''U
rule U=''
#flower
rule K=[c(15)>W>(72)W>(72)W>(72)W>(72)W]
rule W=[c(15)^^!!FF??c(3)&??Z!!][{&&&&&--ff++f++f++++z------|------z++++f++f++ff}]
rule X=[c(4)????Z??ZZ''''!!!!!!Z""""]
#end
110L-System厨 :2015/07/12(日)19:12:10 ID:k1J
     -──-
    /::::::::::ハ::::ハ:::::ヽ
   .::::::::斗-}/ }从:ハ
   |:::::::| \  _`Y::}
   |:::::::|  ̄  \ /}/ イヤーン!
.   从;ハト<⌒ヽ _,ノ}==ミ、
     , く,γ´ ̄ヾ`}⌒) }
      {〉' {    Y=≠くコ
   fア=v‐'    / }´⌒) }
   { { {    /  }ト=彡
   ヾ.     /   ヽ
    く`>‐ '     } \
     `Tハ__         ヽ
      | }  `ヽ        }
┌──────────────────────────┐
│次は、イトバハルシャギクのようなものです            .|
│花序:集散花序(クローズ)または散房花序?          .|
│葉序:糸葉の3出複葉?の十字対生葉序             .|
│花弁は>>59の六角形、葉は線分を太くしただけですw     .|
│今回は以上の条件ですが、イトバハルシャギクって個体差が .|
│大きいので実際と違っていると思います              .|
└──────────────────────────┘



111L-System厨 :2015/07/12(日)19:22:04 ID:k1J
  ,..-―-、
  i  .ルハ、 }       Lparser v2.1用の >>110の一本分の ls ファイルだけど
  | l_^~゚ノ! プププ
  |__l /)ヘ|       他の ls ファイルも一応申し訳程度の成長要素も加味してたりw
  ノ___}        って一レスじゃ足りないんだけど...

#start
#Lparser v2.1
#itobaharusyagiku
recursion 18
angle 15
thickness 20
shape 1
switch_yz 1
#axiom
axiom c(4)A
#rules
#internode
rule I=~(5)FF
#flower
rule K=[c(3)>W>>>W>>>W>>>W>>>W>>>W>>>W>>>W]
rule W=[c(12)^Z][{&&&&;-f+f+f|--f+f+f:}]
#leaf
rule L=[Z[++++:F:Z;;][----:F:Z;;]:F:Z;;]
112L-System厨 :2015/07/12(日)19:22:18 ID:k1J
  ,..-―-、
  {  ノiハ、 }
  lw! >__<ノj   イトバハルシャギクの ls ファイルの続きです~
 ⊂}8- ]lコ= ・ ・ ・ ・ ・ ・
  <王王ハ
   しU

#delay 1
rule A=I[e[&&&&L]%[&&&&L]p]>>>>>>a
rule a=I[e[&&&&L]%[&&&&L]p]>>>>>>B
rule B=I[e[&&&&L]%[&&&&L]p]>>>>>>b
rule b=I[e[&&&&L]%[&&&&L]p]>>>>>>C
rule C=I[e[&&&&L]%[&&&&L]p]>>>>>>D
rule D=I[e[&&&&L]%[&&&&L]p]>>>>>>d
rule d=I[e[&&&&L]%[&&&&L]p]>>>>>>E
rule E=I[e[&&&&L]%[&&&&L]p]>>>>>>G
rule G=I[e[&&&&L]%[&&&&L]p]>>>>>>H
rule H=I[e[&&&&L]%[&&&&L]p]>>>>>>J
rule J=I[^^^Q][%^^^Q][[&&&&L]%[&&&&L]]>>>>>>I[[&&&&L]%[&&&&L]]>>>>>>U
#delay 2
rule Q=R
rule R=S
rule S=t(-0.2)I[[&&&&L]%[&&&&L]]>>>>>>T
rule T=t(-0.2)I[[&&&&L]%[&&&&L]]>>>>>>U
rule U=t(-0.2)IV
rule V=t(-0.2)I?c(3)F![K]
#delay 3
rule e=~(5)h
rule h="j
rule j="l
rule l="m
rule m="n
rule n="o
rule o="
rule p=q
rule q='r
rule r='s
rule s='u
rule u='v
rule v='w
rule w='
#end
113L-System厨 :2015/07/12(日)19:34:19 ID:k1J
      / : : : : : : : : : : : : : : : : : : : : : : : : : : : : : /:/ }: : : : : : : : : : : : : : : : : :!:i
       l:|: : : .: : : : : : : : : : : :\: : : : : : : : : : : : //  l: : : :ハ: : : : .: .: : : : : : l l
        i:l : : !:. : : : : : : : : : : : : :\: : : : :,イ: : : : /    !: : : ! i : : /.: : .:|: : : :| |
        l:l l: :| : : : : : : : : : : : : : : : ;\: :/ !: : : /     ! : : !  !/:ハ: : : : !: : : : :!
        l:i l : : : :__:」: : : : : : ; : : : /!: : メ、 l: : :/    │: .:レ' l: : :! i : : l:|: : : | :|
        !:|: : : : / │: : l /ノ: ://:/  j\/       !:‐:'i  ! :│ !: : :リ: : : : :i
.       l:l: : : : ! r┤ : :|i レ´∠; '   /: /`        l: : !  i: / i: : /: : : : : !
      i: : : : : | | r!: : :l:! __三=-__  ソ         レ´  ∨  l: /: : : .:/!/ 
      l: : : : : ヽ ! !|: : : | (__) ̄=三=-_      _=-‐=ニ三_ 〉レ: : : : / ´  
       l: : : : : : :`、 l: : : ! \\\\\ ̄      ムニ=‐ ̄(_) |: : : /  
       ! : : : : : : ::::ゝ : : |       \\ \\\\ \\ \ ! ノ:/V  
.       l: : : : : : .:::/ !: : :l、     , -‐--、                   !'.:/
     │: : : : : .:/   l: : :l 〉、   /     `ー‐- 、___         }/
      i: : : : : .:/    !: : |'  `〈            ヽ)      イ:|  じゃあホタルブクロ作って!
.     l: : : : .:/   │: :i    ヽ、__ _ _______/__  -<!: :i !
.     !:. : : :/     \;l     ヽ∧´:::::::::::;∨   l     i: / !
.      l: : : /       |       \>:::::::く /     !      レヽ:l
┌───────────────────────────────┐
│次は、ホタルブクロのようなものですけど                     .|
│ttps://ja.wikipedia.org/wiki/ホタルブクロ                     .|
│花序:総状花序、葉序:互生葉序                         .|
│花は>>66の下の花、葉は>>82の広楕円形葉の角度を少し小さくしたやつ .|
│花の形が完全に同じには出来ないのはしょうがないね            .|
└───────────────────────────────┘




114L-System厨 :2015/07/12(日)19:41:05 ID:k1J
  ,..-―-、
  i  .ルハ、 }
  | l ゚ ヮ゚ノ!    Lparser v2.1用の >>113 の一本分の ls ファイルだけど
  |__lノヌ7ヽ|
  ノ_zュ__}

#start
#Lparser v2.1
#hotarubukuro
recursion 25
angle 30
thickness 200
shape 1
switch_yz 1
#axiom
axiom c(8)A
#rules
#internode
rule I=~(1)FFI
#leaf
rule L=l[~(5)t(0.1)c(4){.[+(40)g.][+(30)gg.][+(20)ggg.][+(10)gggg.][ggggg.][-(10)gggg.][-(20)ggg.][-(30)gg.][-(40)g.]}]n
rule l=m
rule m="m
rule n=o
rule o='o
#flower
rule K=O[&&&P]c(7)[p>(72)p>(72)p>(72)p>(72)p]Qoooooooooo # 5 petal elements on a branch
rule p=[&(90)[M]+(72)[N]] # one petal
rule M=[^(8)"gM{.]. # first 'curved line'
rule N=N^(8)."g.} # second 'curved line'
rule O=t(.05)Zt(.1)ZO
rule P=[q++q++q++q++q++q]
rule q=[^(10){-fff+fff+ffff-|-ffff+fff+ffff}]
rule Q=c(15)Fc(3)?Z!Q
#delay 1
rule A=I[&&L]>(137)B
rule B=I[&&L]>(137)C
rule C=I[&&L]>(137)D
rule D=I[&&L]>(137)E
rule E=I[&&L]>(137)G
rule G=I[&&L]>(137)H
rule H=I[&&L]>(137)J
rule J=I[&&L][>&+K]>(137)a
rule a=I[&&L][>&+K]>(137)b
rule b=I[&&L][>&+K]>(137)d
rule d=I[&&L][>&+K]>(137)e
rule e=I[&&L][>&&+K]>(137)
#end
115L-System厨 :2015/07/12(日)19:53:22 ID:k1J
                    . ::::::::::::::::::::::::::::::::::::::::::::::::::::::::: \
                      /::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::ヽ
                   . ':::::::::::::::::::::: ト、::::::::::::::::::::::::::::::::::::::::::::::::: .
                   /::::::::::::::::::::/i:::| \::::\::::ヽ:::::::::::::::::::::::::::::: .
                  .:::::::::::::::::::::l l:::|   \::::ヽ_::ト、::::::::::::::::::::::::::::}
                     .::::::::::::::i::i::::|_|_:l    ヽ:´l:::lハヽ::::::::::::::::::::::l
                l::l:l::::i::::レi´リ レ'       Vル! ルハ::::::::::::::::::::'
                |::l:l::::l::::i レ             |::::::::::::::::::l
                |::l:l::::i::::|           ___   リ :i::::::i:::::: |
                |::l:l::::l:::ハ   __       ´ ̄ `x/:::::l::::::l:::::: |`ヽ
                从l::::i:::::ハx'´ ̄`       """|:::::::l::::::l::: 从 li
                  |::::l::::::::|"""          |:::::::l:::::ル''´/ ̄`ヽ
                  |::::l::::l:入           |:!::: レ'´  /    i
                  |::::l::::l::::i: >  . _ ー‐ '_. ィ 从ル'/  /       |
                  人::l::::l:::ル' l|  |∧ >=くj  / /  /      |
         /´ ̄ ̄`ヽ  /`Y´   |  | ∨ ○  ∨ /i   | ./      |
        /        . |     `ヽ.|  ト、 ∨  / ./ .l   レ'     |
      . '             V|      |  |∧_∨__/_」  |      |
.     /           N     _ .⊥.               | .       |
     /            || > ´ _/´  ̄ ̄ ̄`ヽ/〉/〉   j/     |
    .'           .ィ爪l// ´ {      __j  ∨/_r < ̄ `丶.    |
┌───────────────────────────────┐
│次は、ペンタスのようなものです                          .|
│花序:散形花序、葉序:三出複葉の十字対生葉序 という設定にしました .|
│花弁は>>59の六角形、葉は>>82の広楕円形葉に tropism vector(向性  .|
│ベクトル)を加えました これは結構自身があったりします          .|
└───────────────────────────────┘




116L-System厨 :2015/07/12(日)20:03:52 ID:k1J
  ,..-―-、
  i  .ルハ、 }    Lparser v2.1用の >>115 の一本分の ls ファイルだけど
  | l ゚ c゚ ノ!    あ、三出複葉のちっちゃい葉も>>59の六角形だったけど
  |__j´丈 d|
  ソ_zュ__}    そしてこれも1レスにおさまらないかもしれない

#start
#Lparser v2.1
#pentas
recursion 10
angle 18
thickness 20
shape 1
switch_yz 1
#axiom
axiom c(4)A
#rules
#internode
rule I=~(5)FF
#flower
rule E=I[P]QRST
#rules
#flower
rule P=Ic(2)?F?F?Z!!![K]
rule Q=[~(5)&P][~(5)^P][~(5)+P][~(5)-P][~(5)&+P][~(5)^+P][~(5)&-P][~(5)^-P]
rule R=[~(5)&&P][~(5)^^P][~(5)++P][~(5)--P][~(5)&&++P][~(5)^^++P][~(5)&&--P][~(5)^^--P][~(5)&&+P][~(5)^^+P][~(5)&&-P][~(5)^^-P][~(5)&++P][~(5)^++P][~(5)&--P][~(5)^--P]
rule S=[~(5)&&&P][~(5)^^^P][~(5)+++P][~(5)---P][~(5)&&&+++P][~(5)^^^+++P][~(5)&&&---P][~(5)^^^---P][~(5)+++&&&P][~(5)+++^^^P][~(5)---&&&P][~(5)---^^^P]
rule T=[~(5)&&&&P][~(5)^^^^P][~(5)++++P][~(5)----P][~(5)&&&&++++P][~(5)^^^^++++P][~(5)&&&&----P][~(5)^^^^----P][~(5)++++&&&&P][~(5)++++^^^^P][~(5)----&&&&P][~(5)----^^^^P]
rule K=c(2)~(5)W>>>>W>>>>W>>>>W>>>>W
rule W=[c(3)^''Z""][{&&&&-(25)-(25)z+(25)z+(25)z|-(25)-(25)z+(25)z+(25)z}]
#leaf
#rule L=ac(8)[++++M][----M]Z[~(5)t{.[+(40)g.][+(30)gg.][+(20)ggg.][+(10)gggg.][ggggg.][-(10)gggg.][-(20)ggg.][-(30)gg.][-(40)g.]}]o
rule L=ac(8)[++++M][----M]Z[~(5)t{.[+(40)tg.][+(30)tgtg.][+(20)tgtgtg.][+(10)tgtgtgtg.][tgtgtgtgtg.][-(10)tgtgtgtg.][-(20)tgtgtg.][-(30)tgtg.][-(40)tg.]}]o
rule M={--z+z+z|--z+z+z}
117L-System厨 :2015/07/12(日)20:04:06 ID:k1J
  ,..-―-、
  {  ノiハ、 }
  lw! ゚ ヮ゚ノj    ペンタス(草山丹花(くささんたんか))の ls ファイルの続きです
 8Uヾネノ]lつ
  <王王ハ    散形花序の部分は空間をなるべく埋めるように適当に作ってますw
   しU

#delay1
rule A=I[[&&&L]%[&&&L]]>>>>>B
rule B=I[[&&&L]%[&&&L]]>>>>>C
rule C=I[[&&&L]%[&&&L]]>>>>>D
rule D=I[[&&&L]%[&&&L]]E
#delay2
rule a=b
rule b="d
rule d="e
rule e="h
rule h="i
rule i="j
rule j="k
rule k="
rule o=p
rule p='q
rule q='r
rule r='s
rule s='u
rule u='v
rule v=w'
rule w='
#end
118L-System厨 :2015/07/12(日)20:14:21 ID:k1J
                 /    丶
                   /        ヽ
               /  .       
               |  つ な な
               |  か .ん の
       ィ   ̄ ̄` メ_, |  ま か .|
     /  /.∧.ト i    .|  え 変 
    i ィナ_V .ヽl式ぃ  |  て な
     |,i 〈i',:::z  .i:::z`ヽゝ |  き の
    N、l .!::ノ  !:::ノ  | |  た
       !,  ,_,,,-t  ィ |  |
      | >タ:::::::..ィ匕  .|
    /::::::::::::::::::`ヾl`、t┘
     i::::┃:::::::┃:::::::::ヽ `i'乂       /
    i:::: ┃:::::::┃:::::::::::|   i |`  _ /
    i:::::::::::::::::::::::::::::::::::|  l l
   ィ ィt`::::--イ_,:::::::l   i .l
   ∪El:::::::::::::Σ∪ーー i l
   |ヽ|´::::::::::::::::弋! |   N
┌───────────────────────┐
│次は、スギナのようなものかもしれない          .|
https://ja.wikipedia.org/wiki/スギナ            .|
│花序:なし、葉序:八輪生葉序 という設定にしました  .|
│葉は線分を太くしたものです                 .|
│                                 .|
│イトバハルシャギクが輪生葉序だと思って作り始めたん.|
│だけど違ってたのでスギナに流用しましたけど      .|
│                                 .|
│これ、更に金魚藻に流用できるかもしれない       .|
└───────────────────────┘




119L-System厨 :2015/07/12(日)20:20:46 ID:k1J
  ,..-―-、
  {  ノiハ、 }
  lw! >__<ノj    Lparser v2.1用の >>118 の一本分の ls ファイルです
 ⊂}8- ]lコ= ・ ・ ・ ・ ・ ・
  <王王ハ    構造が単純なので気合入れて作ってたらまたまた1レスに
   しU      収まりきれなくなってしまいました

#start
#Lparser v2.1
#sugina
recursion 14
angle 15
thickness 20
shape 1
switch_yz 1
#axiom
axiom c(8)A
#rules
#internode
rule I=J
rule J=~(5)aMFZSm
#leaf
rule L=a[[X]%[X]][>>>[X]%[X]][<<<[X]%[X]][<<<<<<[X]%[X]]m
rule X=~(5)^~(10)tZ~(10)tZ~(10)t!Z~(10)t!Z??
#delay 1
rule A=I[L]B
rule B=>I[L]C
rule C=>I[L]D
rule D=>I[L]E
rule E=>I[L]G
rule G=>I[L]H
rule H=>I[L]I
#delay2
rule a=b
rule b=";;d
rule d=";;e
rule e=";;h
rule h=";;i
rule i=";;j
rule j=";;k
rule k=";;l
rule l=";;
120L-System厨 :2015/07/12(日)20:21:08 ID:k1J
  ,..-―-、
  i  .ルハ、 }
  | l ゚ c゚ ノ!  スギナのようなものの ls ファイルの続きだけど
  |__j´丈 d|
  ソ_zュ__}  これで今回はおしまいかもしれない

#delay3
rule m=n
rule n='::o
rule o='::p
rule p='::q
rule q='::r
rule r='::s
rule s='::u
rule u='::v
rule v='::
#delay4
rule M=N
rule N=?(1.1)O
rule O=?(1.1)P
rule P=?(1.1)Q
rule Q=?(1.1)R
rule R=?(1.1)
#delay5
rule S=T
rule S=!(0.9)T
rule T=!(0.9)U
rule U=!(0.9)V
rule V=!(0.9)W
rule W=!(0.9)
#end
121L-System厨 :2015/07/12(日)20:32:08 ID:k1J

 ,x匕´ ̄ ̄ `ヽ.                          , '      ヽ
/´         ヽ           ___        /
            ',       , '´       `' 、 、   ,'
  し  な  い   l    /   /l ∧ .ト     ヾ', ,' は  い  じ
  .よ  の   っ   l   /   /l./ | / ', | ', ト,       ,' .か   っ  ゃ
  っ  も  せ    l  /   | /|/_,,|,'  ',.|、弋ト, l    l  せ  せ  あ
  .か  出  |   l .l   .N‐'!‐‐、    ',.-''=‐弋  .l  .が   |
     す  の   .l .l  / ,'´.ィチc    ,ィチc. `, `∨._l  .作  の
     事  せ   l  И,l. l  l:::::::ム    l::::;:;ム l  | Kl  .品  せ
     に  .で    .l  ' l lて ',:::::::リ   ',:::::::リ  っ| | l  .出  .で
             l   弋l///  ̄      ̄ /// | レl  .す
             l    ノ     __  _   ,'l | ', .か
            L_   `x、   l/      ) ,乂 レ'__」 .ら
            ャ‐‐!    '| ` ー- __ ム'    'ーt
、          .ノ        |    , イ'l  ノ  l`乂.   ` 、        ,
. 丶,     _, イ         |  ,ィフ l 〉,,〈  /  l `ヽ     |'ー __ノ
    ̄ ̄ ̄            | ,/´ 〈. レ'7;;lイ 〉  l    '.,   .|
                     レ   / .∨;;;;レ'  <     ',  |
                  /   ヽ ヾ/  /      ', .|
┌──────────────────────────────┐
│まとめで、Blender に wrl ファイルをひたすら取り込んでCG作ってみたよ.|
│左からスギナのようなもの(自作)、ペンタスのようなもの(自作)、右奥 .|
│からシダ(Lparser v2.1 のサンプルの fern.ls)、ホタルブクロのようなも .|
│の(自作)、そしてイトバハルシャギクのようなもの(自作)になってま~す.|
└──────────────────────────────┘




122L-System厨 :2015/07/12(日)20:50:04 ID:k1J
       /::...............................∧ ........................................................................:.
     /::............. .......::|:: .... |  、........... |\................................................::|
     ::................ ....../|:: .... |  \ `ー|─\--トく::.............................::|
    |::..............::| ....l八: /|:     \:..|   \|  \|::.................... ::|
    |::..............::| ....| /::...:|      \.        |::.................... ::|
    |::..............::L イ   \|       ィ ≠ミ、  │.................... ::|
    |::...............:|\|             !/行ミt    :|::.................... ::|   えぇぇぇぇぇぇぇぇ
    |::..|::....... ∧    ,ォ ≠ミ        ゙ ヒrリ.》   ::.....................::|
      V八|\ .....:..  〃 yr=ミ:、         、、、|::......................::|
         |::......'.  イ {_ヒri}゙            |::......................::|
         |::......∧    ̄´                 |::......................::|
         |::......:...:.、、、     {ニニニィ      |::.................::/レ\__
         |::.........:{        ∨    }    ノイ│ ....../::/|/  _人/
         |::..........个::.... ____ ゙こ三/...  ´  Ⅵ:..j∨|/      \
           :::........... .::::|\/   ∧       └∨          〉
          \|\ |\レ ´  \厶ノ       /        /⌒⌒
┌──────────────────────────────┐
│わたしは樹形をひたすら取り込んでみましたけど...           .|
│はかせ~木はオブジェクトが多すぎて数本取り込んだらメモリ使い切っ .|
│ちゃいました  勝負になりませんよ~                    .|
│本当はもうちょっと木を増やして地面に草を生やす予定だったのに   .|
│                                           .|
│左奥の1本は Lparser v2.1 のサンプル tree 6.ls の葉を変えたもの、  .|
│その手前の2本は Lparser v2.1 のサンプル tree 2.ls の葉を変えたもの.|
│一番手前の左側は「The Algorithm Beauty of Plants」のアオキモデル .|
│fig 2.6a に葉を加えたもの、右側はアオキモデル fig 2.6d に葉を加えた .|
│もの、右奥の一本は3分岐 fig 2.8b のパラメータを変えて葉を加えた  .|
│もの、その手前の一本はアオキモデル fig 2.6c に葉を加えたもの    .|
│になってます                                    .|
└──────────────────────────────┘




123L-System厨 :2015/07/12(日)21:04:50 ID:k1J
           .  - ── -  .
          /              ` .ノ}
.      . '               ト、
       /      /   ∧. ∧      Vハ
     '   / . 斗ト /  ∨ ,ィ十 、   Y
.     i  / /レ__レ'    ∨ _ハ! ハ     l
.     |   |i /〃云k    .ィ云`ヾリ     |
     从 iル' ! |l匕l|    |l匕l| }l| ト、 |  ?
.     人ハ!  .t仆ソ    t仆ソ ノ | | i. !
      |N|""""          "" | レ'  !
      | 〈     「 ̄ ̄ }    | |   |
      | i〕ト .   ー‐ ' .   イl| |   |
      | li i i  _∧ ̄ ノ^ト、 l! ル'    !
      | ll l /〈   X´ リ ト、    l
      | ll/|_ ∨}__ ∨  .| \   |
      /   / V ∨ ─┘  ヽ  リ
     /  i |  \.  ∨/  >   i | ∨
┌───────────────────────┐
│ゆっくりやる予定なのにネタが無くなっちゃったけどw  .|
│次回から更新ペース落ちるかもしれない         .|
└───────────────────────┘
124L-System厨 :2015/07/18(土)13:05:02 ID:o8M

====-、      ゙ミt、  ,、}ミi lミi
====-、\     Vl}.//.l/ {/
      \     .}ニ/
             lミ/       -==-、
             ヾtzzzチ'       ノツ
                           ___
    ,.'" ̄ヽ    ,..-、           / ,_,ィ ,..ィ ,. `ヽ、
   ,'    l  ./   V         /ィ_-Z_l/ {/ヽ、! . ヽ.
   ,'     l._ ,'    .l          /ゝ' ̄  ヽ‐-Vl   ゙f'i
   !     .ノーZ!    l         ,ハ / ̄ ̄`ヽ`ひ 〉,、 〈
   、  .,    .l    'ヾt、    ,..-‐' ゝ\    ノ .// ノ /}
   `7"::`ヽ、  ヽ.__ノ  l `' .、/ィ_,,...-‐ァ''アミr‐_,,..ィr''"~" /:::::
    ,'::::::::::::::::`::ー'_ `ヽ l .._  `<  ン/zチ=リ.‐''"/\ / ,':::::::
   .!::::::::::::::::::::::::::::ヽ.__. V  \  .Vュヽニ二ノ`'ー'',..- l  l:::::
   l::::::::::::::::::::::::::::::::;l  :l!    ヽ ムf"¨>‐、  ノ   .l : l::::
   ヽ::::::::::::::::::::::::::::;'、_./      ゙; ムー/ / \_   / ./:::
    ヽ::::::::::::::::::;;::-‐''゙       ',. ム! i    ` , ', ./::
       ̄ ̄ ̄ ̄ヾミヽ       ヽ `ヽ、  .,.ィ'ノl/::
            ::ヽ.._ 、        /:`゙''':::::
             :::::::: ̄`::.....___/::::::
┌───────────────────────┐
│今回の間違い指摘~                    .|
>>122 アオキモデル→ホンダモデル            .|
│木のCGを作ってたのと、アオノ&クニイモデルがぼん  .|
│やり頭に浮かんで融合したのかもしれないw       .|
└───────────────────────┘
125L-System厨 :2015/07/18(土)13:11:55 ID:o8M
               ___   ~ヽ
        ,‘  ...::::::::::::::::::::::::::::`丶
           /::::::::::::::::::::::::::::::::::::::::::::::\ ’
        /:::::::::/|:::∧:::|Χ:::::::::::::::::::::::::::. ;
       {  |:::::: /\/ 'V⌒Y\ :::::::::::::::: |
        ; N:::イ,'⌒}  {  |  |::::::::::::::::: | }
        | ::| 、_,ノ   、__ノ  |::::::::::::::::: |
        :  |::リ         u|::::::::::::::::: | {  あわわわわわ
        }  |(u r    ̄\ u::::::::::::::::::: | ;
        |:::> ゝ, ___)│::::::/:∧:::|
        ∨∨∨レ:ァャ ア |人〃⌒∨ :
         ~''      人_{///ヘ(⌒) ) .
            / 〈__>ーく    マ二二7
     ,'~   `; /│/ | ~`∨  Y⌒)ヽ
       (ヽ   〈ーl/ (⌒ヽ ├ー‐仁_ノ ,
    { ( ̄  ー-/ ̄|  ,>、  ー<`YV  ノ
    '   `ー- 、 ` |\/  丶、    |│ ;
            \  _!      \  |│ ;
┌────────────────────────┐
│アホな間違いしてすみません~                .|
│今回の草本は、スイセンノウのようなものです       .|
│花序:複2出集散花序(オープン)、葉序:十字対生葉序 .|
│花弁は>>82の公楕円形を修正してハート型に、葉は   .|
>>59の六角形を利用してます                 .|
│                                   .|
│「The Algorithmic Beauty of Plants」の84ページ、     .|
│fig 3.14 を元にしていて世代を進めると蕾や実もなります .|
│↓一番上の画像:第七世代、花と実一つずつ       .|
│二番上の画像:第十世代、実と蕾二つずつ         .|
│三番上の画像:第十一世代、花と実二つずつ       .|
│         第十世代の蕾から花が咲きました     .|
│四番上の画像:第十三世代、蕾三つ、実が四つ      .|
│         第十一世代の花が実になりました     .|
│五番上の画像:第十九世代、たくさんw           .|
│                                   .|
│まだまだ私の技術が未熟で同じようなものは作れません .|
│が、「The Algorithmic Beauty of Plants」を読み始めた頃 .|
│はこんなの作れるの?な状態だったので感慨深いですね.|
└────────────────────────┘












126L-System厨 :2015/07/18(土)13:18:13 ID:o8M
  ,..-―-、
  i  .ルハ、 }  Lparser v2.1用の >>125 の ls ファイルだよ
  | l ゚ ヮ゚ノ!
  |__lノヌ7ヽ| 1レスに収まりきれないよw
  ノ_zュ__}

#start
#Lparser v2.1
#suisennou
#color
color 2 249 37 0
color 8 109 247 156
color 12 119 70 53
#
recursion 19
angle 10
thickness 30
shape 1
switch_yz 1
#axiom
axiom c(8)J
#rules
#internode
rule I=~(3)FFN
#leaf
rule L=a[~(5)t(0.1)c(8){--f+f+f|--f+f+f}]l
rule a=b
rule b=""d
rule d=""e
rule e=""h
rule h=""i
rule i=""
rule l=m
rule m=''n
rule n=''o
rule o=''p
rule p=''q
rule q=''
#flower
rule K=c(2)[W][>M>(72)M>(72)M>(72)M>(72)M]
rule M=[&(80){.[+(33)ggg.][+++gggg.][++ggggg.][+ggggg.][gggg.][-ggggg.][--ggggg.][---gggg.][-(33)ggg.]}]
rule g=_
#fruit
rule W=X
rule X=Y
rule Y=c(12)??????Z!!!!Z!!
127L-System厨 :2015/07/18(土)13:20:23 ID:o8M
  ,..-―-、
  {  ノiハ、 }  >>126 の続きです
  lw! ゚ ヮ゚ノj
 8Uヾネノ]lつ
  <王王ハ
   しU

#delay 1
rule A=B
rule B=C
rule C=D
rule D=E
rule E=G
rule G=H
rule H=J
rule J=FI[^^^^^^L]>(90)[^(45)tA]>(90)[^^^^^^L]>(90)[^(45)tE]FIc(4)????Z??ZZ!!!Z!!![K]
#delay2
rule N=~(3)FFFO
rule O=~(3)FFP
rule P=~(3)FFQ
rule Q=~(3)FFR
rule R=~(3)FFT
rule T=~(3)FFU
rule U=~(3)FF
#end
128L-System厨 :2015/07/18(土)13:35:45 ID:o8M
       ,, <: : : : : : : : : : : : : : : : `ヽ
     /ノ: : : : : : : : : : : : : : : : : : : : : : : : ヽ
    ∠: : : : : : : : : : : : :/: : : : : : : : : : : : : : :ヽ
.     /: : : : : : : : : : : : /|: : ∧ : : ト、 : : : : : : : ハ
   ,′: : : : : : : : : : :/ ノ: /  ∨:i} ∨ :|: : : : : :ハ
   {il|:: :: : : : :厶斗七}`/    V<⌒ヽ: : : : : : }
    }il|: : : : : : :/ :厶=ミ/    VムミVハ : : : : :i}
    |il|: : : : : :/〃〃 `ヽ     〃 `ヽヽ V:i: : : リ
.   |: : :〃|:: :| { {i{   i}    {i   i} } V: : ル'
.   |: : {ヘ |:: :i   从   ノ     乂  从ノ !: : /
   i|: 人 |: :i| ( つ`¨´        `てつ {:ル'
   i|: : : ヽ| : |    ヽヽヽヽヽヽヽヽヽ   {:iノ
   i : : : : ∧ ト、               }i:|
   | : : : : 从j : >   rー ― ァ ,.     イ从
   | : : : : : : : : : / ∨≧ ー≦`く: : : : :レ': :!
   |: : : : : : : :〃|   V >< ,′`ヽ : : : : |
   |: : : : : : 〃 |   V乂::乂,′  |ハ: : : :!
   |: : : : : /   └―  ∨:::::∨―‐┘ ∨: i
   |: : : : /    <  ∨::∨   >   V:j
   |: : : :ハ       \  ∨  /     V
   | : : :た                   }
┌────────────────────────┐
│なの~                               .|
│「The Algorithmic Beauty of Plants」の103ページ、fig 4.4 .|
│を参考にヒマワリ作ろうと思ったんだけど、L-System4 も .|
│Lparser v2.1 も途中で描写が途切れちゃうんだけど?  .|
│DOSプログラム時代の制限引き摺ってるのか、バグ    .|
│なのか 技術・理論的に出来る目処が立ったのに~    .|
│                                   .|
│なんとか、バラとヒマワリを L-Systemで作ることを     .|
│中期目標にしたいと思いま~す                .|
└────────────────────────┘
129L-System厨 :2015/07/27(月)01:21:55 ID:yJE
   ノ` ー'^ー‐'"ヽ
  ヽ       ヽ
  /   出    l
  ヽ  来    〉
  .ノ   た    ヽ
  )   |     /
  )        (
 ,ィ,ヽ_  __  _/   _
ア    V .∨\`  .rユ_j_j゙i
  .::i-/、'| ハ_i_ :ム  /`ヽ  >'
  /l/-、 !'  ゙_ヽ }./ ヽ、 〉'
イ!.|,,.l!  li  / l! lノ/   ./
、| | ,.-.、_    ''ヽ   ./
..l,、!ゝ    ̄マ ノ   /
::/l ヽ アフ7'ア   /
'  ¨<゙,介r'    ./
┌────────────────────────┐
│なの~ ヒマワリみたいなの出来たけど~          .|
│花序:頭状花序、葉序:互生葉序               .|
│花弁は>>82の公楕円形、種は線分の太さを調節、    .|
│葉は>>63 の上の葉パーツを流用してます         .|
│                                   .|
│ls ファイルは1行の最大文字数190文字以内にしないと  .|
│いけないかもしれない                      .|
└────────────────────────┘




130L-System厨 :2015/07/27(月)01:28:17 ID:yJE
  ,..-―-、
  i  .ルハ、 }  Lparser v2.1用の >>129 の ls ファイルだけど
  | l ゚ ヮ゚ノ!
  |__lノヌ7ヽ| 制限が結構厳しかったかもしれない
  ノ_zュ__}

#start
#Lparser v2.1
#sunflower
#color
color 2 255 241 15
color 3 251 236 53
color 5 244 250 37
color 6 255 255 0
color 9 132 115 71
color 10 196 188 54
color 11 173 140 56
#
recursion 35
angle 30
thickness 120
shape 1
switch_yz 1
#axiom
axiom c(8)A
#rules
#internode
rule I=~(1)GFHI
#leaf
rule L=GXH[M][N]
rule M=[+(5)^(0.5)M{.].O.}
rule N=[-(5)^(0.5)N{.].O.}
rule O=gO
rule X=t(.02)FX
#delay 1
rule A=GIH[&&L]>(137.5)B
rule B=GIH[&&L]>(137.5)C
rule C=GIH[&&L]>(137.5)D
rule D=GIH[&&L]>(137.5)E
rule E=GIH[&&L]~(5)>>&GXHY[K]
#delay2
rule G=?(1.02)G
rule H=!(0.98)H
#sepal
rule Y=[>J>J>J>J>J>J>J>J>J>J>J>J]
rule J=[&&&{.[+(15)gggggggggggggg.][gggggggggggggggggg.][-(15)gggggggggggggg.]}]
131L-System厨 :2015/07/27(月)01:32:13 ID:yJE
  ,..-―-、
  {  ノiハ、 }
  lw! >__<ノj    Lparser v2.1用の >>130 の続きです、花の部分です
 ⊂}8- ]lコ= ・ ・ ・ ・ ・ ・
  <王王ハ    花で置換規則を使いすぎて葉が5枚しか付けられませんでした...
   しU

#flower
#Seed Shape1
rule K=c(9)[S]&&&+(137.5)[f(1.00)Q&(4)S]P[f(1.41)Q&(4)S]P[f(1.73)Q&(4)S]P[f(2.00)Q&(4)S]P[f(2.24)Q&(4)S]P[f(2.45)Q&(4)S]P[f(2.65)Q&(4)S]P[f(2.83)Q&(4)S]P[f(3.00)Q&(4)S]P[f(3.16)Q&(4)S]a
rule a=P[f(3.32)Q&(8)S]P[f(3.46)Q&(8)S]P[f(3.61)Q&(8)S]P[f(3.74)Q&(8)S]P[f(3.87)Q&(8)S]P[f(4.00)Q&(8)S]P[f(4.12)Q&(8)S]P[f(4.24)Q&(8)S]P[f(4.36)Q&(8)S]P[f(4.47)Q&(8)S]b
rule b=P[f(4.58)Q&(12)S]P[f(4.69)Q&(12)S]P[f(4.80)Q&(12)S]P[f(4.90)Q&(12)S]P[f(5.00)Q&(12)S]P[f(5.10)Q&(12)S]P[f(5.20)Q&(12)S]P[f(5.29)Q&(12)S]P[f(5.39)Q&(12)S]P[f(5.48)Q&(12)S]d
rule d=c(10)P[f(5.57)Q&(16)S]P[f(5.66)Q&(16)S]P[f(5.74)Q&(16)S]P[f(5.83)Q&(16)S]P[f(5.92)Q&(16)S]P[f(6.00)Q&(16)S]P[f(6.08)Q&(16)S]P[f(6.16)Q&(16)S]P[f(6.24)Q&(16)S]P[f(6.32)Q&(16)S]e
rule e=P[f(6.40)Q&(20)S]P[f(6.48)Q&(20)S]P[f(6.56)Q&(20)S]P[f(6.63)Q&(20)S]P[f(6.71)Q&(20)S]P[f(6.78)Q&(20)S]P[f(6.86)Q&(20)S]P[f(6.93)Q&(20)S]P[f(7.00)Q&(20)S]P[f(7.07)Q&(20)S]h
#Seed Shape2
rule h=P[f(7.14)Q&(24)S]P[f(7.21)Q&(24)S]P[f(7.28)Q&(24)S]P[f(7.35)Q&(24)S]P[f(7.42)Q&(24)S]P[f(7.48)Q&(24)S]P[f(7.55)Q&(24)S]P[f(7.62)Q&(24)S]P[f(7.68)Q&(24)S]P[f(7.75)Q&(24)S]i
rule i=P[f(7.81)Q&(28)S]P[f(7.87)Q&(28)S]P[f(7.94)Q&(28)S]P[f(8.00)Q&(28)S]P[f(8.06)Q&(28)S]P[f(8.12)Q&(28)S]P[f(8.19)Q&(28)S]P[f(8.25)Q&(28)S]P[f(8.31)Q&(28)S]P[f(8.37)Q&(28)S]j
rule j=P[f(8.43)Q&(32)S]P[f(8.49)Q&(32)S]P[f(8.54)Q&(32)S]P[f(8.60)Q&(32)S]P[f(8.66)Q&(32)S]P[f(8.72)Q&(32)S]P[f(8.77)Q&(32)S]P[f(8.83)Q&(32)S]P[f(8.89)Q&(32)S]P[f(8.94)Q&(32)S]k
rule k=P[f(9.00)Q&(36)S]P[f(9.06)Q&(36)S]P[f(9.11)Q&(36)S]P[f(9.17)Q&(36)S]P[f(9.22)Q&(36)S]P[f(9.27)Q&(36)S]P[f(9.33)Q&(36)S]P[f(9.38)Q&(36)S]P[f(9.43)Q&(36)S]P[f(9.49)Q&(36)S]l
rule l=P[f(9.54)Q&(40)S]P[f(9.59)Q&(40)S]P[f(9.64)Q&(40)S]P[f(9.70)Q&(40)S]P[f(9.75)Q&(40)S]P[f(9.80)Q&(40)S]P[f(9.85)Q&(40)S]P[f(9.90)Q&(40)S]P[f(9.95)Q&(40)S]P[f(10.00)Q&(40)S]m
#Seed Shape3
rule m=P[f(10.05)Q&(44)S]P[f(10.1)Q&(44)S]P[f(10.15)Q&(44)S]P[f(10.2)Q&(44)S]P[f(10.25)Q&(44)S]P[f(10.3)Q&(44)S]P[f(10.34)Q&(44)S]P[f(10.39)Q&(44)S]P[f(10.44)Q&(44)S]P[f(10.49)Q&(44)S]n
rule n=P[f(10.54)Q&(48)S]P[f(10.58)Q&(48)S]P[f(10.63)Q&(48)S]P[f(10.68)Q&(48)S]P[f(10.72)Q&(48)S]P[f(10.77)Q&(48)S]P[f(10.82)Q&(48)S]P[f(10.86)Q&(48)S]P[f(10.91)Q&(48)S]P[f(10.95)Q&(48)S]o
#ray floret Shape1
rule o=c(11)P[f(11)Q&(45)R]P[f(11.05)Q&(45)R]P[f(11.09)Q&(45)R]P[f(11.14)Q&(45)R]P[f(11.18)Q&(45)R]P[f(11.22)Q&(45)R]P[f(11.27)Q&(45)R]P[f(11.31)Q&(45)R]P[f(11.36)Q&(45)R]P[f(11.40)Q&(45)R]p
rule p=P[f(11.45)Q&(48)R]P[f(11.49)Q&(48)R]P[f(11.53)Q&(48)R]P[f(11.58)Q&(48)R]P[f(11.62)Q&(48)R]P[f(11.66)Q&(48)R]P[f(11.7)Q&(48)R]P[f(11.75)Q&(48)R]P[f(11.79)Q&(48)R]P[f(11.83)Q&(48)R]q
rule q=P[f(11.87)Q&(51)R]P[f(11.92)Q&(51)R]P[f(11.96)Q&(51)R]P[f(12.00)Q&(51)R]P[f(12.04)Q&(51)R]P[f(12.08)Q&(51)R]P[f(12.12)Q&(51)R]P[f(12.17)Q&(51)R]P[f(12.21)Q&(51)R]P[f(12.25)Q&(51)R]r
#ray floret Shape2
rule r=P[f(12.29)Q&(54)R]P[f(12.33)Q&(54)R]P[f(12.37)Q&(54)R]P[f(12.41)Q&(54)R]P[f(12.45)Q&(54)R]P[f(12.49)Q&(54)R]P[f(12.53)Q&(54)R]P[f(12.57)Q&(54)R]P[f(12.61)Q&(54)R]P[f(12.65)Q&(54)R]s
rule s=P[f(12.69)Q&(57)R]P[f(12.73)Q&(57)R]P[f(12.77)Q&(57)R]P[f(12.81)Q&(57)R]P[f(12.85)Q&(57)R]P[f(12.88)Q&(57)R]P[f(12.92)Q&(57)R]P[f(12.96)Q&(57)R]P[f(13.00)Q&(57)R]P[f(13.04)Q&(57)R]u
rule u=P[f(13.08)Q&(60)R]P[f(13.11)Q&(60)R]P[f(13.15)Q&(60)R]P[f(13.19)Q&(60)R]P[f(13.23)Q&(60)R]P[f(13.27)Q&(60)R]P[f(13.30)Q&(60)R]P[f(13.34)Q&(60)R]P[f(13.38)Q&(60)R]P[f(13.42)Q&(60)R]v
#petal Shapes
rule v=c(2)P[f(13.45)Q&(74)T]P[f(13.49)Q&(74)T]P[f(13.53)Q&(74)T]P[f(13.56)Q&(74)T]P[f(13.60)Q&(74)T]P[f(13.64)Q&(74)T]P[f(13.67)Q&(74)T]P[f(13.71)Q&(74)T]P[f(13.75)Q&(74)T]P[f(13.78)Q&(74)T]w
rule w=c(3)P[f(13.82)Q&(79)U]P[f(13.86)Q&(79)U]P[f(13.89)Q&(79)U]P[f(13.93)Q&(79)U]P[f(13.96)Q&(79)U]P[f(14.00)Q&(79)U]P[f(14.04)Q&(79)U]P[f(14.07)Q&(79)U]P[f(14.11)Q&(79)U]P[f(14.14)Q&(79)U]x
rule x=c(2)P[f(14.18)Q&(84)V]P[f(14.21)Q&(84)V]P[f(14.25)Q&(84)V]P[f(14.28)Q&(84)V]P[f(14.32)Q&(84)V]P[f(14.35)Q&(84)V]P[f(14.39)Q&(84)V]P[f(14.42)Q&(84)V]P[f(14.46)Q&(84)V]P[f(14.49)Q&(84)V]y
rule y=c(3)P[f(14.53)Q&(89)W]P[f(14.56)Q&(89)W]P[f(14.59)Q&(89)W]P[f(14.63)Q&(89)W]P[f(14.66)Q&(89)W]P[f(14.70)Q&(89)W]P[f(14.73)Q&(89)W]P[f(14.76)Q&(89)W]P[f(14.80)Q&(89)W]P[f(14.83)Q&(89)W]
#
rule P=^^^&&&+(137.5)
rule Q=^^^
rule S=Z?????F?F!F!!!!!F
rule R=????FF[++F!!!!F][--F!!!!F]F!!!!F
rule T=~(5){.[+(40)ggg.][+(30)gggggg.][+(20)ggggggggg.][+(10)gggggggggggg.][ggggggggggggggg.][-(10)gggggggggggg.][-(20)ggggggggg.][-(30)gggggg.][-(40)ggg.]}
rule U=~(5){.[+(36)ggg.][+(27)gggggg.][+(18)ggggggggg.][+(9)gggggggggggg.][ggggggggggggggg.][-(9)gggggggggggg.][-(18)ggggggggg.][-(27)gggggg.][-(36)ggg.]}
rule V=~(5){.[+(32)ggg.][+(24)gggggg.][+(16)ggggggggg.][+(8)gggggggggggg.][ggggggggggggggg.][-(8)gggggggggggg.][-(16)ggggggggg.][-(24)gggggg.][-(32)ggg.]}
rule W=~(5){.[+(28)ggg.][+(21)gggggg.][+(14)ggggggggg.][+(7)gggggggggggg.][ggggggggggggggg.][-(7)gggggggggggg.][-(14)ggggggggg.][-(21)gggggg.][-(28)ggg.]}
#end
132L-System厨 :2015/08/03(月)00:35:28 ID:Osw
            /        `丶、
          」∨               ヽ
          7                 '.
          /        ノ| ∧ `ト   N|   っ
.          /N      イ/ |/  ∨| ∧  |  っ
.        〃 Y⌒i  Ⅳ∩    ∩  }/V    -=ニ二三三三三
       /   {{{ |  | ∪    ∪ {{-=ニ三/ ̄ ̄`'く>三三三
         /ゝ _|  | ''       '' 人.三三|(‐~~‐)| |三三三
      /  厶-=ニ | :八‐-(_:::::::⌒)<∧ノ三三| ー--‐' |_|三三三
    -=ニ二三三三三\_,,,フ三三三三三三三三|  <・ )  「 三三三
二三三三三三三三三三三三三三三三三三ニ圦  {__>,,ノ三三三
三三三三三三三三三三三三三三三三三三三ニ≧===≦三三三
┌────────────────────────┐
│今回は L-system を使って貝を作ってみようと思うけど  .|
│参考文献は植物と同じ Prusinkiewicz センセの所から   .|
│Modeling seashells - Algorithmic Botany           .|
│ttp://algorithmicbotany.org/papers/shells.sig92.pdf     .|
│                                   .|
│貝の形状は弦巻線(三次元的な対数螺旋)を元に     .|
│描けるということなので L-system で弦巻線を描ければ  .|
│貝っぽいのが作成出来そうという事になるかもしれない  .|
│                                   .|
│調べてみると、L-System4 や Lparser v2.1 に shellX.ls  .|
│という名前でサンプルが幾つか合ったので参考にしました.|
└────────────────────────┘










133L-System厨 :2015/08/03(月)00:41:22 ID:Osw
  ,..-―-、
  {  ノiハ、 }
  lw! ゚ ヮ゚ノj   >>132 の上2つの貝を Lparser v2.1 の ls ファイルで表すと
 8Uヾネノ]lつ
  <王王ハ   上から2つ目と3つ目の貝は L-System4 を参考にしてます
   しU

貝1
#start
#Lparser v2.1
#shell_1
#color
color 1 255 129 25
#
recursion 18
angle 10
thickness 10
min_thickness 1
shape 1
#axiom
axiom c(1)PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP
#rules
rule P=S>(45)gg'(0.91)
rule S=[&(90)[A]+(45)^(90)gg'(0.91)&(90)[B]]
#
rule A=[^gA{.].
rule B=B^.g.}
#end

貝2
# --- L-System Parser/Mutator --- Lj Lapre ----------------------------------
#start
#Lparser v2.1
#shell_2
recursion 24
angle 10
thickness 10
min_thickness 1
shape 1
#axiom
axiom c(15)PPPPPPPPPPPPPPPPPPP
#rules
rule P=S>(20)g'(.8)
rule S=[[&(120)[A]]>(20)g'(.8)[&(120)[B]]]
#
rule A=[^gA{.].
rule B=B^.g.}
#end
134L-System厨 :2015/08/03(月)00:44:52 ID:Osw
  ,..-―-、
  i  .ルハ、 }  >>132 の下2つの貝を Lparser v2.1 の ls ファイルで表すと
  | l ゚ ヮ゚ノ!
  |__lノヌ7ヽ|  L-system でこれだけの曲面が作れるならバラの花も出来る?
  ノ_zュ__}

貝3
# --- L-System Parser/Mutator --- Lj Lapre ----------------------------------
#start
#Lparser v2.1
#shell_3
recursion 19
angle 10
thickness 10
min_thickness 1
shape 1
#axiom
axiom c(15)PPPPPc(2)Pc(15)Pc(2)Pc(15)Pc(2)Pc(15)Pc(2)Pc(15)Pc(2)Pc(15)Pc(2)Pc(15)Pc(2)Pc(15)Pc(2)Pc(15)Pc(2)Pc(15)Pc(2)Pc(15)PPPPPPPP
#rules
rule P=S>(20)g'(0.92)
rule S=[&(90)[A]+(20)^(90)g'(0.92)&(90)[B]]
#
rule A=[^ggA{.].
rule B=B^.gg.}
#end

貝4
#start
#Lparser v2.1
#shell_4
#color
color 2 228 155 15
#
recursion 19
angle 10
thickness 10
min_thickness 1
shape 1
#axiom
axiom c(15)Pc(2)Pc(15)Pc(2)Pc(15)Pc(2)Pc(15)Pc(2)Pc(15)Pc(2)Pc(15)Pc(2)Pc(15)Pc(2)Pc(15)Pc(2)Pc(15)Pc(2)Pc(15)Pc(2)Pc(15)Pc(2)Pc(15)PPPPPPPPPPPPPPPPPPPPPPP
#rules
rule P=S>(20)g'(0.915)
rule S=[&(90)[A]+(20)^(90)g'(0.915)&(90)[B]]
#
rule A=[^gA{.].
rule B=B^.g.}
#end
135L-System厨 :2015/10/31(土)21:14:49 ID:vQB
        ,.イ! r'"::li::::::|         「:::l:::」 /::::/ノ
.,,--‐^ーヘ_, r':::::::::l l::::::::li:_;ノ       _ヽ'" |::::/7
}      、 V:::::::::l l::::/::ム   _,,..-‐ニ三ニ ̄ミt、¨゙<
       7V::::::::l フ:::::::/,.ィチ三三三ニ-゙  ミミヽノ  __  __i__  | -|-
  ー|/ヽ  { V:::::::`::::::/ ,.'三l、三、ニi、ニ、ミt、_ミ三/    ( ・・ ノ\  レ<jヽ
  ./| ノ   > V:::::::::<  l l三!\ミ、゙Xtヾl ゙マ三ミヽ、  ー|‐ ナr_マ_  ー|-、\
   つ   {  ヽ:::::::::::> .!ハミl、|  ヾ!  / r'''') l三ミツ   9  乂 、)  / 、ノ
       〈   ヽ:/,..-V三! ̄   ./-‐゙'¨::: lミニヽ.   | | |  ニ|ニ  ┼┼
      .r'゙    / 、l、.ヾム ―ァ:::::::::  /`ヽlハミiソ  ・.・.・  、___   └─
,.-、 ,_ /`   / . i_ノ !  ゙i(う':::::::  /  ,.ィ'  ヽ
.  ヾ! `゙    、l  イ,..-_   V:'、  <l _,,...ィ゙ー-.、____ノ__
      ,   ヽ  l' l `i  ヾミZiニニチ'" : : : : : : : :´: :ヽ,ィZァ、,.--v-‐-v⌒
 ,..-―‐''":l   レi.  ヽ ヽ.ノ  ,.-ヾ゙./  : : : : : : : : : : : : : ¨:.ム、
. ! ナ ヽ  !   ヽr‐、ヽ"  /  ./    __,,- : : : : : : : : : :.:.:.:.:.ヽ、
. l  <メ   l    ヽ、__>.ヽ_ ! /    .,.ィ'ノ::::ヽ. . : : : : : :.:.:.:.:.:.::.::.::.:ヽ,  / ̄〉
./  (ノヽ_,ィ゙     V  l ヽ、ス    .,ィ'゙ゞj' ゙''::::ヽ. : : : : .:.:.::.::.::.::.::.::.::ノtノ  r'
l __,,....ノ__ノ      |   r'  ヽ /`¨´    ゙':::ヽ--..、.::.::.::.:::.:::.:;ヘ;;fTT「~i
´   ̄       .l .r‐''"ヽ、 ,イ         ゙':;ヽ_::ヾt、.::.:::/;;;;;;ヾーー'゙l
           .{ィ ¨(r'_,_,-゙" l!           ゙'':ヽ:__>r<;;;;;;;;;;;;;;;}.:;;;;;;;
このスレはL-System(Lindenmayer system)を使って
・決定論的な古典フラクタル図形描画
・木や草らしさのモデル化を含む植物の成長シミュレーション
・貝殻の形状の生成と生物反応拡散系を使った体表パターンの生成
を研究するスレです

GoogleやYahooの検索に引っかかるようにキーワードを満載w
136L-System厨 :2015/10/31(土)21:24:47 ID:vQB
          /l, -‐. ´: : : : : : : :  ̄: : ..`. . 、
      _i : :: : : : : : : : : : : : : : : : : : : : : : ヽ
    ∠ : : : : : : : : : : : : : ; : : : ハ: : : :.: : : : : .ヽ
     /: : : : : : : : : : : :':/l : : / 丶 : : ト; : : : : :丶
      /: :/: :.' : : : : /: .:/ !: ./  `.:、: l !: : : : : : `、
    i: :, : : ,' : : : -A-/-‐ヒ/´    `乂_l:_!_: : 、: i
    l: : : : : : : ;ィ.:/ ,レ〒=、     ,=〒=、ハ: ,.: .:. :!
    │: : : : !: :i レ,イ,.::::`-'!     l.,:::`‐'lヽ V : : : l
    l: .:/ニi: :l  i |ハ.::::.ハ}    {ハ:::::.ハ! }/: : .: : l
    |: :{  (l: :l  ` ヽ.二.ノ    ヽ.二.ノ ´i: : .:/V
    |: :ヽ、 !: l   ``           ``│iV
    |: : : : ‐!: l、      __   __      l: l
    |: : : : : :V: :\    {   ̄ ヽ::::}   ノ:/
    |: : : : : : : : :: : `> ゝ、____)/ .-‐.´:V:l
    |: : : : : : : : : ;イ l ` フ=く_}ヽ: : : : : : :.!
    |: : : : :. :: / |  ヽ/!:::::::l l lヽ : : : : l
    | : : : : /  │  ヽ 〉:::〈/  ! ヽ: : : l
┌────────────────────────┐
│月日は百代の過客にして、行きかふ年も又旅人也... .|
>>132の貝殻の表面のパターンをリアルにしたくて     .|
│生物反応拡散系であれこれしていたらあっという間に   .|
│月日が経ってしまいましたけど                .|
└────────────────────────┘
137L-System厨 :2015/10/31(土)22:13:41 ID:2Gr
           /:::::\___/:::::::∨^l
           ./:::::::::::::::::::::::::::::::::::::::::|. l / ̄7
          |::::::/⌒ヽ:::::::::/⌒ヽ::::| ム'   ./
          |:::::l .┃ !:::::::l .┃ l:::レ'     ./
           /::::::', ┃ /::::::::', ┃ /::::l    /
        /::::::::::`ー.'::::::::::::`ー.':::::::l   /
        \:::::::::::::::::::::::::::::::::::::::::,イ__/
            }` ー――――一 ´ {
            \   \  ´   /|
              |\      У:::::l
              |::::::\   /:::::::::::l
              |::::::::::::\/::::::::::::::::|
              |::::::::::i::::::::::i:::::::::::::::::l
              |::::::::::|::::::::::|:::::::::::::::::|
           ./⌒l::::::::|::::::::::|::::::::::::l⌒ヽ
         |:::::::|::::::::|::::::::::|::::::::::::|::::::::|
┌───────────────────────────┐
│先ずはこれ↓を見て欲しい                       .|
│生物反応拡散系でテクスチャを自作して貝殻に貼り付けてみた .|
>>132と比べて多少はリアルになったと思う             .|
└───────────────────────────┘




138L-System厨 :2015/10/31(土)23:38:59 ID:vQB
               .  ´:::::::::::::::::::::::::::::::::::::`  .
                 /::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: \
           . '::::::::::::::::::::::::::::::::::::::::::::ト、::::::: :::::::::::::: \
             . ':::::::::::::::::::::::::::::::::::: ∧:::: | ヽ:::::::ト、ヽ::::::::::::ヽ
.            /::::::::::::::::::::::::::/:::/:::i:::li::l::::::! !i: i:::i∧ハ::::::::::::: .
.           .':::::::::::::::::::::::::::i::;イ´:「::リ |::::リ |:i::l::リ⌒Vハ::::::::i:::: .
         l::::::::::::::::::::::::::::l::::lj::::ル' ノイ  从ル'   !ハ:::l::l::::::i
         |:::::::::::::::::::::::::::lル' レ= 、     , == く }:::l::l::::::|
         |:::::::i:::::i::::i::l:::::| 〃7云ヽ     /.示ヾ Y::i:l: l::::::|
         |:::::::l:::::l::::l::l:::::| { |::i以!:|     |::i以i:|  ! リ:::i!::i::|
         |:::::::l:::::l::::l::l:::::|.  从仆ソ    .从仆リ  !:ルレ:リ
         |:::::::l:::::l::::l::l:::::|     ̄        ̄   |:::l::|
         |:::::::l:::::l::::l::l:::::|///            ///|:::l::|
         |:::::::l:::::l::::l::l:::::|   r‐‐───┐      .!: l::|
         |:::::::l:::::l::::l::l:::::|   |        Y!    . ィ1::l::| 
         |:::::::l:::::l::::l::l:::::|>  .ゝ.  __ __ .ノ  ,. <::::li:::l :|
       _レル!:::ハ:j::l:::::|ル:::::| > -- -r <::ル'::::l::::ll:::::リ
     /⌒ヽ 人:!::::ルハリ::::/´入      |ト、ルハノレ'jイ
    /     Y  Y j:>''´〈   \ _/  Vト、
.   / /三>、 |  /   \ \    / ヽ. / /\
   i  |三三ll !/      \ \ / ○ ∨ ./   \
┌───────────────────────────┐
│作成の動機は「The Algorithmic Beauty of Sea Shells」を見て  .|
│感動して...自分でもいつか作ってみたいと思っていたからです.|
│参考文献は↓                              .|
└───────────────────────────┘
コンピュータ内で生物化学反応を計算する? 「反応拡散」系のプロシージャル技術
ttp://news.mynavi.jp/column/graphics/086/
生物成長モデルで貝モデルをプロシージャル生成する
ttp://news.mynavi.jp/column/graphics/087/

↑の「生物成長モデルで貝モデルをプロシージャル生成する」の元論文
Modeling seashells
ttp://algorithmicbotany.org/papers/shells.sig92.pdf
生物反応拡散系で模様を作る方法が載ってる論文
A Model for Pattern Formation on the Shells of Molluscs
ttp://www.researchgate.net/publication/222474986_A_Model_for_Pattern_Formation_on_the_Shells_of_Molluscs
実際にテクスチャを作成するプログラム例
The Mathematics of Patterns:
The modeling and analysis of reaction-diusion equations
ttp://www.pacm.princeton.edu/documents/Kimura.pdf

以上の参考文献を元にテクスチャを生成するプログラムを作成したので順次公開します

(▼w▼) TRICK OR TREAT!
139名無しさん@おーぷん :2015/11/02(月)19:57:59 ID:SJt
processingやjavaとかでもL-System出来るのかな
興味出てきたわ
140L-System厨 :2015/11/02(月)23:05:38 ID:Rai
            , - ´"”~”"'' ‐ 、
          , "               ヽ、
        ,ゝ'          ハ /、、  ヽ
       ノ'        ./ 从 ./ !.,' ヽリ、.   i
       ,′       ノ iノ-.、{ iノ   , -、リ、 l
       i        ソ ,' ,.‐..、   ' ,...、ヽ. l
       l    , i   l 、 i:::::::J.    i::::J 'liソ
      l.   l l   l   辷:ソ    辷ノ .lノ
      l   ‘、_l   l ""        ""~,
      l      l   l  ,'~""'''' ー‐ァ  ,.'
       l   ,.'".l   .l.、.       ソ ., イ
        l  ./, ‐ .ゞ、. !、゛' ー‐-,‐ '"/、l
       l ./'     ヽ l \ /l   /  丶
       l/:l      .l从、//:::::l/V     l
      /.:::l      l\ ゝ丶::::/  l´  l
┌──────────────────────┐
>>139 昔C言語で低レベルグラフィックス関数から .|
│作っていって>>6>>8まで出来たから、Javaとか  .|
│ならもっと簡単に出来る気がするけど         .|
│                                .|
│二次元タートルグラフィックスならネットにサンプルが.|
│転がってるからそんなに難しくないかもしれないけど .|
│三次元タートルグラフィックスは大変でした      .|
│三次元タートルグラフィックスなんて全然資料無かっ .|
│たし  今は資料あるんだけどね↓           .|
└──────────────────────┘
Cinderellaで L-System
ttps://sites.google.com/site/cinderellajapan/cinderelladel-system
の「3Dタートルグラフィクス」とか
141名無しさん@おーぷん :2016/03/06(日)12:19:42 ID:fSS
>>140
>>139 とは違う人間だけど、
ちょっと前にwikipedia読んで2次元のを書いて(僕の場合haskell)遊んで、
3次元ってどうするのがいいのかなーって思ってたので参考になります
ありがとう
142L-System厨 :2016/10/30(日)22:43:45 ID:tmi
     ヽ、    _,.. -‐─‐- 、ノ)
     __,ゝ`'ー-<ニニニ==- 、   ヽ、
   ∠,             ``ヽ. \
    / ,ィ'    , r'´、   、   、  i  ヘ
    l//   /l/| ト、\  \  \|rへハ
    .|  ./, '⌒ヽ! \ゝ ⌒ヽ   |⌒V^|
      l,ヘ |  >ヘ、    >ヘ、\|    |
      .〉 l (.(:゚|     |:゚) ) |    .|
      |  〉∵`´ r'‐  `´∵ /    l
     .| {     'ー―ァ    |    /
      |  \    ヽノ   _,.|   /
    r‐┤  _.>ー-、.__, イ‐-|  iノ‐-r-、
    ヽ、レ'´‐、>-/´`ー-‐'´`ヽレ′  ∨
    /ノ  `V ∠ /,∧'\  .| |‐'´   ノヽ、
    / ( ヽ、/ / ヒ/||i`ー'`ーr'  |_,. <  ヽ
   (  `ゝ .|   ̄ ̄{i] ̄ ̄   .ト、`` ノ   |
   ゝ-(__ |       _     |  〈 .__ノ
    | ̄/ |ー-‐‐‐     ``‐-´'ヾー'´二|
┌──────────────────┐
│お花がいっぱいできれいね~!       .|
└──────────────────┘
143L-System厨 :2016/10/30(日)22:53:29 ID:tmi
                       ,、
                        /∧
                     ///∧
                       /////∧
                       //////;∧
                        /;///,.///∧
                   /////ハ///∧
                   ///,/r=x\/,∧
                   //∠ヌ_ゞ゙'r<\ヘ.
                   ,'//{-=ニィ ',.!ヾニ=‐!ヘ
                   ∨/'.,//   '  ヾリ//〉
                   }//,ヘ ,. -‐- 、///メ、
                    _,.ィ´ヽ//,ヽ.、  ,イ//〆/,):..、
                ,..</////,\// `, ,´/,////'///ミ:x
             //////////////////´////////////ヽ
           ///////////////////////////>'' ´ ̄ ̄.
         ,ィ´`゙'ミ////>''"T´\ミ//////彡''"´ |   l    '、
       l      `""´    L__ \.`l ̄l´./   |   |    .〉
        j          i     /   `'{  .}/ ヾ:‐=!   |    'ユ
        /         |.    ` ' .,_  \/   冫__ |    ム
       /        ,:|       ` 〆,. ' ´   ̄ ̄リ     ム
┌─────────────────────────────┐
│どうかね?私の空中庭園は 我々ネオアトランティスの科学の結晶だ .|
│ここにある花、木、草 全て作り出したものだよ              .|
│そして永久に枯れることは無い                        .|
│                                          .|
│その美しさをずっと我々に見せ続けてくれる...             .|
│我々の力は既に自然をも作り出すことが出来る             .|
│つまり我々は万物の創造主、「神」にすらなれるのだ!         .|
└─────────────────────────────┘
144L-System厨 :2016/10/30(日)22:58:34 ID:tmi
         /;;;;;;;;;;;;;;;;::::::::::\_
   -、_`ヽ、--';;;;;;;;;;;;;;;;;;;;;;;;;;;;;)::::::::::l__ _
  -==ー;;;;;;;;;;;;;;, -―:::::::::::::::::::::::::::‐.、`ヽ
   ヽ:::;;;;;;;;;;;;;;;;;;「lr‐‐‐‐;:;‐::::::::::::::::::\:::::ヽ,
   };;__;;;;;;;;;;;;;;;;Vヘ:::--‐‐ィ:::::::::::::::l::\;;:}
    /;;;;;;;;;;;;;r‐ヾ;:r-‐<;;;:ノ//|};|::::}',:::>-
   ヽ::/::::::(「rハ|:::: ヽTシrソノィl┤‐┘
    「/:::::/::>‐}::::.      (シ/{'´
    `ーヘ/(_,、ィ: 、:::    __ -'/、           _ , 、rrイ
       >‐L::__丶、  ,、ヘ}ゝ      ,、-‐ ' ´   { {ヽ、
     /.......    ̄  ̄``'''ー―-----'´       ヽ、ヽ
     l:::::::::::::::::::::......................              , 、- '"´
____ノ|:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::l  ,、-‐''"´    ,
:::::::;;;/::{;l:::::::::::,、:r―-‐r-‐ァ‐r―――--' ´::::::;;_,、 ‐' ´
r-':::::::::::、ヾ__,ノr'  /―-ヽ,\r-‐‐‐― '''´ ̄
::::::::::::::::::ヽ,_::::     |}     `-ヽ
┌───────────────────────┐
│傲慢だわ!                          .|
└───────────────────────┘
145L-System厨 :2016/10/30(日)23:04:42 ID:tmi
                 ,、
                 ,゙ :.、
                ,゙: : :、
                ,゙: : : :;、
               ,゙: : : : :,、
                ゙: : : : : :,、
             . ,゙: : : : : : :,、
               ,゙: : : : : : : :,、
              ,゙: : : : : : : : :,、
             ,゙: : : : : : : : : :,、
              ゙: : : : : : : : : : :,、
             ,゙: : : : : : : : : : : ;、
             ,゙: : : : : : : : : : : : ;、
           /: : : : : : : : : : : : : ;゙、
        ,..-‐' ´: : : : : : : : : : : : : : : : :\
    ,..-‐' ´: : : : : : : : : : : : : : : : : : : : : : : : ` '‐- 、
  /i` ._: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :`::':.
  ,゙ .l   ` ':‐-.._: : : : : : : : : : : _,.ニ-‐ '"´´´     ゙、
  l .l        ```l´´´´¨゚´´            ゙,
  i  !          l            /      ,
 ,ヘ 人          |           ./       ,
 l  \\        |          /        !
 |   ヽ丶       .|          /   ,゙     .|
 |    ヘ ヽ      .|         ∧  ,゙     |
┌───────────────────────┐
│まあいい                            .|
│ナディアくん、君には我々ネオアトランティスの研究の .|
│一端を見てもらうことにしよう                .|
└───────────────────────┘
146L-System厨 :2016/10/30(日)23:20:51 ID:tmi
            /        `丶、
          」∨               ヽ
          7                 '.
          /        ノ| ∧ `ト   N|   っ
.          /N      イ/ |/  ∨| ∧  |  っ
.        〃 Y⌒i  Ⅳ∩    ∩  }/V    -=ニ二三三三三
       /   {{{ |  | ∪    ∪ {{-=ニ三/ ̄ ̄`'く>三三三
         /ゝ _|  | ''       '' 人.三三|(‐~~‐)| |三三三
      /  厶-=ニ | :八‐-(_:::::::⌒)<∧ノ三三| ー--‐' |_|三三三
    -=ニ二三三三三\_,,,フ三三三三三三三三|  <・ )  「 三三三
二三三三三三三三三三三三三三三三三三ニ圦  {__>,,ノ三三三
三三三三三三三三三三三三三三三三三三三ニ≧===≦三三三
┌──────────────────────────────┐
│とかいう茶番は置いておいてw                         .|
>>141 二次元のときのz軸周りの回転だけならいいかもしれないけど  .|
│三次元のx軸とかy軸周りの回転の場合、回転の順番を変えると     .|
│作られる図が変わっちゃうのが悩みの種だったけど            .|
│3次元グラフィックスのテクスト読んでも解決方法載ってないし...    .|
│結局はかせはLparserがソースを公開していた頃に解読して       .|
│「回転命令によって亀の座標系が回転し、その後、亀はx軸方向を向く」 .|
│に辿り着いたのでした                              .|
└──────────────────────────────┘
147L-System厨 :2016/10/30(日)23:39:25 ID:tmi
   /::...............................∧ ........................................................................:.
   /::............. .......::|:: .... |  、........... |\................................................::|
   ::................ ....../|:: .... |  \ `ー|─\--トく::.............................::|
  |::..............::| ....l八: /|:     \:..|   \|  \|::.................... ::|
  |::..............::| ....| /::...:|      \.   /    |::.................... ::|
  |::..............::L イ   \|        /    │.................... ::|
  |::...............:|\|            /       :|::.................... ::|  しゅぼぼーん
  |::..|::....... ∧  ____       ̄ ̄ ̄ ̄(⌒)::.....................::|
.   V八|\ .....:..     /          、、、|::......................::|
       |::......'.    /              |::......................::|
       |::......∧ (⌒)                   |::......................::|
       |::......:...:.、、、            ⌒ヽ   |::.................::/レ\__
       |::.........:{       f⌒´     ノイ│ ....../::/|/  _人/
       |::..........个::.... ____∨___,,...  ´  Ⅵ:..j∨|/      \
         :::........... .::::|\/   ∧       └∨          〉
        \|\ |\レ ´  \厶ノ       /        /⌒⌒
┌──────────────────────────────┐
>>138で書いてた反応拡散系を使ったテクスチャを作るプログラムは  .|
│論文そのままをパクって公開というわけにもいかないので作り直して  .|
│現在バグ鳥中なのでもう少しかかります~                  .|
│プログラムの形式:Octaveのmスクリプト                   .|
│ライセンス:Apache License 2.0                         .|
│偏微分の解法:空間離散化手法は差分法で時間進行は陽解法     .|
│になる予定です~                                 .|
└──────────────────────────────┘
148L-System厨 :2016/12/18(日)11:09:14 ID:fuI
            /        `丶、
          」∨               ヽ
          7                 '.
          /        ノ| ∧ `ト   N|   っ
.          /N      イ/ |/  ∨| ∧  |  っ
.        〃 Y⌒i  Ⅳ∩    ∩  }/V    -=ニ二三三三三
       /   {{{ |  | ∪    ∪ {{-=ニ三/ ̄ ̄`'く>三三三
         /ゝ _|  | ''       '' 人.三三|(‐~~‐)| |三三三
      /  厶-=ニ | :八‐-(_:::::::⌒)<∧ノ三三| ー--‐' |_|三三三
    -=ニ二三三三三\_,,,フ三三三三三三三三|  <・ )  「 三三三
二三三三三三三三三三三三三三三三三三ニ圦  {__>,,ノ三三三
三三三三三三三三三三三三三三三三三三三ニ≧===≦三三三
┌──────────────────────────────┐
>>147のあと食中毒で寝込んだり、学会行ったりで忙しくなってしまった .|
│けどプログラムのソース貼るよ!                        .|
│おーぷんは投稿がパブリックドメインになるということなので        .|
>>147の ライセンス:Apache License 2.0 は取り消そうと思うけど     .|
│                                            .|
│どっちにしても、色々遊んでください                      .|
└──────────────────────────────┘
149L-System厨 プログラム1 :2016/12/18(日)11:19:35 ID:fuI
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Referrences
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%[1] D. R. Fowler, H. Meinhardt, and P. Prusinkiewicz., "Modeling Seashells.",
% In Proceedings of the 19th Annual Conference on Computer Graphics and Interactive Techniques, SIGGRAPH '92, pp. 379窶87, 1992.
% ttp://algorithmicbotany.org/papers/shells.sig92.pdf
%[2] H. Meinhardt, and M. Klingler, "A model for pattern formation on the shells of molluscs.",
% J. theor. Biol. 126, pp. 63窶9, 1987.
% ttps://www.researchgate.net/publication/222474986_A_Model_for_Pattern_Formation_on_the_Shells_of_Molluscs
%[3] Y. T. Kimura, "The Mathematics of Patterns: The modeling and analysis of reaction-diffusion equations.", 2014.
% ttp://www.pacm.princeton.edu/documents/Kimura.pdf
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Parameter set
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
clear all
close all
% Grid and initial data:
w = 80; % pattern
Nx = 500; % How many points we want to discretize our domain with
x = linspace(0,w, Nx);
dx = x(2) - x(1);

example = input(' Which example: (1)example1, (2)example2 ? ');
COLNUM=255;

randn("seed",2^16);

switch example
case 1
%ref[1], fig.11
rho = 0.01*ones(Nx,1);
rho=rho + 0.025*rho.*randn(Nx, 1);
rho0 = 0.001*ones(Nx,1);
mu = 0.01;
nu = 0;
sigma = 0.015*ones(Nx,1);
kappa = 0;
Du = 0.002; Dv = 0.4; % Diffusion constants
dt = 0.01; % size of our time step
step_size=100;%1/dt
TMAX=3500;
%colormap
map = [127, 39, 10
127, 39, 10
127, 39, 10
127, 39, 10
127, 39, 10
127, 39, 10
54, 37, 25
54, 37, 25
150L-System厨 プログラム2 :2016/12/18(日)11:20:19 ID:fuI
54, 37, 25
54, 37, 25
54, 37, 25
54, 37, 25
54, 37, 25
54, 37, 25
54, 37, 25
54, 37, 25
54, 37, 25
54, 37, 25
255, 204, 153
255, 204, 153
255, 204, 153
255, 204, 153
255, 204, 153
255, 204, 153
255, 204, 153
255, 204, 153
255, 204, 153
255, 204, 153
255, 204, 153
255, 204, 153
255, 204, 153
255, 204, 153
255, 204, 153];
map = map./COLNUM;
%
u_ini=1;
v_ini=1;
case 2
%ref[2], fig.14
rho = 0.5*ones(Nx,1);
rho0 = 0.004*ones(Nx,1);
mu = 0.1;
nu = 0;
sigma = zeros(Nx,1);
for ii=1:Nx
sigma(ii,1) = 0.012+(0.038-0.012)*(x(1,ii)-x(1,1))./w;
end
kappa = 1;
Du = 0.1; Dv = 0.1; % Diffusion constants
dt = 0.1; % size of our time step
step_size=10;%1/dt
TMAX=3500;
%colormap
map = [255, 255, 204
255, 255, 204
204, 0, 0
204, 0, 0
204, 0, 0
151L-System厨 プログラム3 :2016/12/18(日)11:21:12 ID:fuI
204, 0, 0
204, 0, 0
204, 0, 0
204, 0, 0
204, 0, 0
204, 0, 0
204, 0, 0];
map = map./COLNUM;
%
u_ini=1;
v_ini=1;
end

t = 0:TMAX;
Nt = length(t); % Number of time points

% Set up for the surface
[X, T] = meshgrid(x, t);
U = 0*X;
V = 0*X;

% Easier to deal with column vectors
x = x(:);
t = t(:);

%Initial conditions: small perturbation away from steady state
u = u_ini*ones(length(x),1) + 0.001*randn(Nx, 1);
v = v_ini*ones(length(x),1);

% Save initial conditions
U(1,:) = u;
V(1,:) = v;

%%% Forward (explicit) method %%%

%%%%%%%%%%%%%%%%%%%%%%%%%
%%% Plotting %%%
%%%%%%%%%%%%%%%%%%%%%%%%%

figure(1); %create new figure
plot(x,u,'g.-', 'linewidth',1);
hold on;
plot(x,v,'r.-', 'linewidth',1);
hold off;

axis([-1 80 -.01 15.01]) % Fix axis limits

f=u;
g=v;
152L-System厨 プログラム4 :2016/12/18(日)11:22:19 ID:fuI
u_new=u;
v_new=v;
cnt=0;
for j = 0:dt:TMAX
% f and g are the reaction terms in the G-M system
f(2:end-1,1) = rho(2:end-1,1).*v(2:end-1,1).*(u(2:end-1,1).^2./(1+kappa*u(2:end-1,1).^2) + rho0(2:end-1,1)) - mu*u(2:end-1,1) + Du*( u(1:end-2,1)-2*u(2:end-1,1)+u(3:end,1) )/dx^2;
g(2:end-1,1) = sigma(2:end-1,1) - rho(2:end-1,1).*v(2:end-1,1).*(u(2:end-1,1).^2./(1+kappa*u(2:end-1,1).^2) + rho0(2:end-1,1)) - nu*v(2:end-1,1) + Dv*( v(1:end-2,1)-2*v(2:end-1,1)+v(3:end,1) )/dx^2;
f(1,1) = rho(1,1).*v(1,1).*(u(1,1).^2./(1+kappa*u(1,1).^2) + rho0(1,1)) - mu*u(1,1) + Du*( u(end-1,1)-2*u(1,1)+u(2,1) )/dx^2;
%f(end,1) = rho(end,1).*v(end,1).*(u(end,1).^2./(1+kappa*u(end,1).^2) + rho0(end,1)) - mu*u(end,1) + Du*( u(end-1,1)-2*u(end,1)+u(1+1,1) )/dx^2;
g(1,1) = sigma(1,1) - rho(1,1).*v(1,1).*(u(1,1).^2./(1+kappa*u(1,1).^2) + rho0(1,1)) - nu*v(1,1) + Dv*( v(end-1,1)-2*v(1,1)+v(2,1) )/dx^2;
%g(end,1) = sigma(end,1) - rho(end,1).*v(end,1).*(u(end,1).^2./(1+kappa*u(end,1).^2) + rho0(end,1)) - nu*v(end,1) + Du*( v(end-1,1)-2*v(end,1)+v(1+1,1) )/dx^2;

% At each step we need to solve the system
u_new(1:end-1,1) = u(1:end-1,1) + dt*f(1:end-1,1);
v_new(1:end-1,1) = v(1:end-1,1) + dt*g(1:end-1,1);
%boundary conditions
u_new(end,1)=u_new(1,1);
v_new(end,1)=v_new(1,1);
% Save for surface
if rem(cnt,step_size)==0
% Plot
plot(x,u_new,'g.-', 'linewidth',1);
hold on;
plot(x,v_new,'r.-', 'linewidth',1);
hold off;
title(['t = ', num2str(j)],'fontsize',24)
drawnow;

U(cnt/step_size+1,:) = u_new;
V(cnt/step_size+1,:) = v_new;
endif
u=u_new;
v=v_new;
cnt=cnt+1;
end

U=flipud(U(500:end,:));
V=flipud(V(500:end,:));

%%%% contour plot %%%
figure(2);
p = pcolor(x, t(500:end), U);
set(p, 'EdgeColor', 'none', 'FaceColor', 'interp');
colormap(map);
xlabel('x')
ylabel('t')

%end program%%%%%%%%%%%
153:L-System厨 :2016/12/18(日)11:37:18 ID:dGo
なのだにゃん!

  /ト.\   _   /|:|
  |:| >:::´:::::::::::`:::< |:|
  |/:::::::::::::::::::::::::::::::: ヾ{                -─ 、
  /:::::::}::八::::ト:_」:::::::::::::::::',               /:::::::::::::ノ
. {::::::V‐ト ヽ{´Vヽハ::::::::::::}   _             .:::::::/ ̄
  Ⅵ::{Y7ハ  ´7ハ |:::::::::::レ← 、 ヽ.           |:::::::|
   |:::} 弋ノ  弋ノ !:::::::Y ,ィ'⌒ヽヾハ        _|:::::::|__
   |公゙.  、  , ゙ 人:::::ハ V廴丿 ,レo     r≦ rヘ:::::::マニ⊃≧
   ∨V{/≧=- ァ=ミ∨Vヘ _/∠ニヽ  {ヘ三ヲマ三ヲヘヲ}
.         Y⌒丶 ` ̄´ //,ィ'⌒ヾハ  、 ______ ノ
         |     ヽ   ゝ' { V廴 丿}j     |:::::::|
         |     |      ヽ __ ノ′    |:::::::|
         |     |         \       ;:::::::;
         |     |          \       /::::::;′
         |     |、        x介x __ /:::::: ′
         |     |ハ       ィ、/ >‐/::::::::/
         |     ∨}    ィ´ _」/ヽ/_/-‐ァ´
         |     } L ィ´_」´  ! /,//,/
         |ー──1.L_ 「 」 -‐ヘ> ′/´
         ト、__,ノ l  「 」 z‐ァ'  /
          }   | `7⌒´ /   /
            'ヘ辿リ  /    /   /
┌──────────────────────────────┐
>>149-152 をひとつのファイルにまとめて "test.m" とか適当に名前   .|
│付ければ Octave で動くと思います 計算結果も貼っておきますね↓  .|
│                                            .|
│ソースは見てもらえば分かると思いますが Reference 3 をベースに   .|
│2つの偏微分方程式を連立させて解く所を陽解法に変えています     .|
│                                            .|
│example1とexample2について                          .|
│解く方程式の形は似ているのに係数や初期値の違いで全く違う模様が .|
│描かれる様子は見ていて楽しいです♪                    .|
└──────────────────────────────┘






154:L-System厨 :2016/12/18(日)11:40:09 ID:dGo
       ,, <: : : : : : : : : : : : : : : : `ヽ
     /ノ: : : : : : : : : : : : : : : : : : : : : : : : ヽ
    ∠: : : : : : : : : : : : :/: : : : : : : : : : : : : : :ヽ
.     /: : : : : : : : : : : : /|: : ∧ : : ト、 : : : : : : : ハ
   ,′: : : : : : : : : : :/ ノ: /  ∨:i} ∨ :|: : : : : :ハ
   {il|:: :: : : : :厶斗七}`/    V<⌒ヽ: : : : : : }
    }il|: : : : : : :/ :厶=ミ/    VムミVハ : : : : :i}
    |il|: : : : : :/〃〃 `ヽ     〃 `ヽヽ V:i: : : リ
.   |: : :〃|:: :| { {i{   i}    {i   i} } V: : ル'
.   |: : {ヘ |:: :i   从   ノ     乂  从ノ !: : /
   i|: 人 |: :i| ( つ`¨´        `てつ {:ル'
   i|: : : ヽ| : |    ヽヽヽヽヽヽヽヽヽ   {:iノ
   i : : : : ∧ ト、               }i:|
   | : : : : 从j : >   rー ― ァ ,.     イ从
   | : : : : : : : : : / ∨≧ ー≦`く: : : : :レ': :!
   |: : : : : : : :〃|   V >< ,′`ヽ : : : : |
   |: : : : : : 〃 |   V乂::乂,′  |ハ: : : :!
   |: : : : : /   └―  ∨:::::∨―‐┘ ∨: i
   |: : : : /    <  ∨::∨   >   V:j
   |: : : :ハ       \  ∨  /     V
   | : : :た                   }
┌──────────────────────┐
>>149 reference のスペル間違ってるんだけど... .|
│他にもありそうな気がするw               .|
└──────────────────────┘
155L-System厨 :2016/12/18(日)11:55:21 ID:fuI
                    ,  ―――  、
           ィ  ´ ̄.>ヘ            `  、
        ./´    ./            ィ        ` 、
       /    ,/          ハ   | .ヽ   ,      ヽ、
      /    ./           / .|  ,,|  ヽ  N       ヽ
     ./    /        i   ./ .|  /   ヽ  | ヽ       ヽ
     /    .i         l  ./  .|  /    .ヽ l ヽ,, |      ..、
    ./    |        ./| `x,   | /      ヽ.| / .|     、 ヽ   うー、意味分かんないんだけど!
   /     |       i / レ´__ヽ、|,ノ       ,,>|´ ヘ |、    .ヘ, 、
   /     .|       | / '/    ヽ丶'    レZ ̄ ヽ、 .Vヘ  i   |ヽ l   はかせはなのだけどなのがはかせになったら
  /      |      /レ /  / ⌒ヽ       / ⌒ヽ ヽ ヘ ,|    l ヘl
  l       l  _i .〈.  |  l    l       l    l  ヽ ヘ |   .l    お菓子食べるからなのはなのでいいんだけど!
  l       V´  |  .|  l  .l    l       l    .l  . l Y  ,  l
 l        / /`>,|  | ⊂`   、___/       、___/  /  .|  .∧ |
...|        .l .| .l  |  |                     つ | /V V
..|         、 i l .l |  | /////               //// ,|.| |
.|          丶  .|  |       ,__   __           V
|          / ` 、,| .|.     /       \,         .〉
          ./   ._」 |\   /          l       /
         /  / .ヘ .|`w'\ `          /    ,,,/.| .|
         /  .l , -メ| .|<|  |`ミッ、,_        , ッ ´
        ./   l .|/ V |  .l  \ ̄フZZT ̄ミヽ、
       ./   .lッミ,    |   、   ミ ソ  |   ミ  l
       ./  .i/  .キ   L   、  / ̄ ̄〉,|   」 .ト
       /  ./  、 .キ    `|> V ヽ__/ .l <´  |ヽ
      / ./   丶 .キ   「    、 /  .ヽ.|   〉  | ヽ
┌───────────────────────────────┐
│Reference に関して                                 .|
│最近の論文は電子出版が増えて、部外者が土日に大学図書館行っても  .|
│閲覧・印刷不可という有様に意味分かんないんだけど!とぶちきれてる  .|
│状況なので、参考文献はなるべくWebで閲覧可能なものにしています    .|
│                                             .|
│税金使った大学の"知"の独占は許せないんだけど!!!          .|
└───────────────────────────────┘
156L-System厨 :2017/05/03(水)10:18:28 ID:OR1
      ,.ィチ三三三三ニ-.,、
    ,ィ'州川三=/!アマミ、三ミt、
   .// / チアソ`/  V「l゙Vェ,,.l
   iミ,..,ィ,,,/ア,.-‐-、   '二ヽVミl!
    |三三ミ! { l圭i  .l圭! } lハj!    ふぇ~
    |三三ミ!.,,,, マツ  .マツ,,{ミ!   っ
    |三三ミ|''"  .__  "゙ lミ!   っ
   V三三ト、 (   ) ,..ィミ/  っ
  c ヾヘヘヘl≧r‐-rzz=チン}レ゙  っ
   ゚,..-=-、,ィ' <_,..-.ヽ!、´
  ,.'::;ィ=y<ヾt、_ヽ''"゙'/ `it、
  !:::H./ .、ヽ.ヾミzァ"Yヽ=チ'ノヽ
  、::ヾ!.  ヽ  ̄/.、__j、i_:}  i.ハ
  テニl!   l:  l,、::::ハ::;ム二コi.ム
┌───────────────────────────────┐
│植物CGを作成するときに無視できないフィボナッチについて >>106とか  .|
│                                             .|
│第14回:全ての植物をフィボナッチの呪いから救い出す           .|
│ttp://www.fbs.osaka-u.ac.jp/labs/skondo/saibokogaku/fibonacchi.html   .|
│これを読むと植物に現れるフィボナッチは発生生物学的に見て実際に   .|
│ありえそうですね                                   .|
└───────────────────────────────┘
157L-System厨 :2017/05/03(水)10:30:21 ID:OR1
      //,--─ ─  丶 、
     / ': : : : : : : : : : : : : : : 丶
   ∠´: : : : : : : : : : : : ,、: : : : : : : : ヽ
 /__: : : : : : : : : : : : : : : !丶: : : : : : : : ヽ
 ´/: : : : : : : : : : : : ,イ/  ヽλ: : ,: : : : ヽ
 /: : : : : : : : : : : : ノ /   'ヽ!ヽ: !、,: : : :!
 !: : : : : : : : _ヘフ─,/    ソ`-、: 、: : : : !
 l: : : : : ,: : : /:ノ __       _ ヘ: : :,、: !
 l: : : : : ,!: ! ,,;"  ゙`、   ,,:''  ゙`、 ! /`ノ
 l: : ,, ' !: ! ''    `   ''     ` ノ
 l  ! τ !: ! ,,,,,          ;;;;;;`,
 !: : : ゝ、!: !'''''    ,、_    ,、    ノ
...!: : : : : `ヘ! >、_/^''^' ` ヾ/´ `'`ヽ´
..!: : : : : : : ,'`i ´ ̄ ̄ ̄ ̄`!´ ̄ ̄ ̄`、
ノ: : : : : : /  !        !      !
!: : : : : ノ   !       .!      !
┌───────────────────────────────────┐
│ヒマワリは完全にフィボナッチにはなっていないとはいっても               .|
│ある程度パターン化して作ろうと思ったらフィボナッチを使うのが楽な訳で...    .|
│                                                   .|
│プロシージャル技術による植物の生成(2)~実在する植物のプロシージャル的表現 .|
│ttp://news.mynavi.jp/column/graphics/083/                        .|
│を参考にはかせが作ったヒマワリモデル>>129-131で角度を微妙に変えてみたよ↓ .|
│最初からフィボナッチに従わないとバリバリ違和感のあるものが出来ました      .|
│                                                   .|
│盲目的に信じるのもアレだけど逆にそれを利用するのもありかもしれない、ぷぷぷ .|
└───────────────────────────────────┘




158L-System厨 :2017/05/03(水)10:37:51 ID:OR1
          ___               が   も
    ,ィ ,..-‐''" ̄   、 ` ヽ、
   / ´   , ./i ,' ∨ 、  \           ま   う
  ,ィ''゙,    ,.'i-/、l .,'  ∨,-、i.  ム
 ´7"   ; /,.レ'-、l/  ´V__ lV.  ム         ん   `
 //    //,ィチテt   'ィ=t、ヽl;; l. }
.// ,..-i | l !三Zミ!   i三Z} .l ! ハリ   コ    で
'  :l '| lxx. ゞニン    ゙ミZソ  lY:l.  /  ケ
   :、 .| |    __       xxVリ /  )      き
    `| |  /   ゙゙̄''''ーtォ   〉 ,;  (   /
   ,;;ハ/ヽ._l       リ  /iィ゙:l  ノ /    な
   ;','::l.::;.ィ゙' ー-..._,,.-―'''ア''¨゙'ヽ、/__
   .;.;',ィ'゙.:.:l  `'<Lr゙"/ f゙rョtヽ V__/       い
  ::;ィ゙-、: :、__,. ヽ/  ゝ二ノ リ:ム
 ::/.:.:.:  ヽ  :.L,,:'         /:.、_}        !!!
.::/.:.:.:   :゙  ,.'      r、,..'、_ハ_ノ
/.:.:.:    /;;:.,イ.:.:     rfヽヽ!,、.ム.
:.:.:.:   .;';;;:/.:././ ,    rヽヽ/ ヽム
:.:.:.   ,ィ{;;/.:./7"{_{ノ :U.:ヽ. /   /ヾt、
:.:.:  ´''"゙ー=ミ,し、fヽノ.:.U::l:V.:.:.  ,.'   ヾ!
:.:.:.:.      ゙7¨¨''ーr<j_liヽ.:./    /
:.:.:.:.:.:.:..    ,'    :!. ー'、 `i:、:.:.:./
、__:.:.:.:.:.:.:.:.:.:.:.:l:.:.:.:.:.:../  ‐<ハ ''''>`¨
┌──────────────────────┐
│AMDのRyzenでPC新調してメモリも32GBにしたので .|
│Blenderでヒマワリ畑作ってみたいかもしれない    .|
└──────────────────────┘
地球ドラマチック「花はどこから来るのか?~驚きのハイテク産業~」
ttp://www4.nhk.or.jp/dramatic/x/2017-05-07/31/1014/2340476/
これ見てたら、またバラの花をL-Systemで作りたくなってきたけど
159L-System厨 :2017/06/10(土)22:20:19 ID:yHJ
  ノ` ー'^ー‐'"ヽ
  ヽ       ヽ
  /   で    l
  ヽ   き    〉
  .ノ   た    ヽ
  )   |    /
  )        (
 ,ィ,ヽ_  __  _/   _
ア    V .∨\`  .rユ_j_j゙i
  .::i-/、'| ハ_i_ :ム  /`ヽ  >'
  /l/-、 !'  ゙_ヽ }./ ヽ、 〉'
イ!.|,,.l!  li  / l! lノ/   ./
、| | ,.-.、_    ''ヽ   ./
..l,、!ゝ    ̄マ ノ   /
::/l ヽ アフ7'ア   /
'  ¨<゙,介r'    ./
┌─────────────────────┐
│というわけで                       ..|
│とりあえずバラっぽいもの作ってみたけど     ..|
│花びらは>>2 の The Algorithmic Beauty of Plants.|
│の Fig.5.9 を応用                    .|
│枝と葉は>>108 のイチリンソウを流用しました   ..|
│                              ..|
│The Algorithmic Beauty of Plants の表紙のバラ .|
│と比較するとまだまだかもしれないけどね     ..|
└─────────────────────┘
PARAMETRIC L-SYSTEMS AND THEIR APPLICATION
TO THE MODELLING AND VISUALIZATION OF PLANTS
ttp://algorithmicbotany.org/papers/hanan.dis1992.pdf
↑の 5.6 Developmental bicubic surfaces を参考にすれば
リアルな花びらも作れるかもしれない




160L-System厨 :2017/06/10(土)22:34:10 ID:yHJ
  ,..-―-、
  {  ノiハ、 }  Lparser v2.1用の >>159 の一本分の ls ファイルです
  lw! >__<ノj  久々に作ったので強引なところも(汗
 ⊂}8- ]lコ= ・ ・ ・ ・ ・ ・
  <王王ハ  そしてやっぱり1レスに収まりきれない
   しU   
#start
#Lparser v2.1
#rose
recursion 10
angle 15
thickness 20
shape 1
switch_yz 1
#axiom
axiom c(12)A
#rules
rule A=IB
rule B=IC
rule C=I[&(90)L]>(137.5)D
rule D=IE
rule E=I[&(90)L]>(137.5)G
rule G=IH
rule H=I[V][K]
#internode
rule I=~(5)???FFFFFFFF!!!
#leaf
rule L=[M]
rule M=^I&[++++FFFFFFFF''N""][----FFFFFFFF''N""]FFFFFFFF[N]
rule N=P[~(10)c(8){.[+(40)g.][+(35)g.][+(30)gg.][+(25)gg.][+(20)ggg.][+(15)ggg.][+(10)gggg.][+(5)gggg.][ggggg.][-(5)gggg.][-(10)gggg.][-(15)ggg.][-(20)ggg.][-(25)gg.][-(30)gg.][-(35)g.][-(40)g.]}]S
rule P="""""Q
rule Q="""""R
rule R="""""
rule S='''''T
rule T='''''U
rule U='''''
161L-System厨 :2017/06/10(土)22:34:52 ID:yHJ
  ,..-―-、
  i  .ルハ、 }  バラの ls ファイルの続きだよ
  | l ゚ ヮ゚ノ!
  |__lノヌ7ヽ|  花びらは湾曲させつつある程度形が変えられる
  ノ_zュ__}  ようにしたかったんで苦労したけど
#flower
rule K=c(2)[>(18)[^(12)a]J[^(18)a]J[^(24)b]J[^(30)d]J[^(36)d]J[^(42)d]J[^(45)d]J[^(48)d]J[^(51)d]J[^(54)d]J[^(57)d]J[^(60)d]J[^(63)d]J[^(66)d]J[^(69)d]J[^(72)d]J[^(75)d]J[^(78)d]J[^(81)d]J[^(84)d]]
rule J=>(137.5)"(1.03)
rule a=-(20)+(20)[j]+(10)[j]+(20)
rule b=-(20)+(10)[i]+(10)[j]+(10)[j]+(10)[k]+(10)
rule d=-(20)[h]+(10)[i]+(10)[j]+(10)[j]+(10)[k]+(10)[l]
rule h=[{.+(5).ggggg.{.&(10)ggggg.{.&(10)gg.][-(5)ggggg[&(10)ggggg[&(10)g.].}.].}.}.}]
rule i=[{.+(5).ggggg.{.&(10)ggggg.{.&(10)ggg.][-(5)ggggg[&(10)ggggg[&(10)gg.].}.].}.}.}]
rule j=[{.+(5).ggggg.{.&(10)ggggg.{.&(10)ggg.][-(5)ggggg[&(10)ggggg[&(10)ggg.].}.].}.}.}]
rule k=[{.+(5).ggggg.{.&(10)ggggg.{.&(10)gg.][-(5)ggggg[&(10)ggggg[&(10)ggg.].}.].}.}.}]
rule l=[{.+(5).ggggg.{.&(10)ggggg.{.&(10)g.][-(5)ggggg[&(10)ggggg[&(10)gg.].}.].}.}.}]
rule V=[>(60)W>(60)W>(60)W>(60)W>(60)W>(60)W]
rule W=[c(8)&(90){-ffffffff+ffffffff+ffffffff-|-ffffffff+ffffffff+ffffffff}]
#end
162L-System厨 :2017/06/10(土)23:01:45 ID:yHJ
                    .  ´  ̄ `   .               | j i/〉、
               /:::::::: /!::ト、::::::::::::::\              |∩  /
                  /::::: ;ィナ/ |::lxト、‐ 、:::::::::: ヽ          |j ) ノ
             イi:l::ル笊 人l ノ笊ハi:::::::::::::: ヽ       /`V  イ
             从i:| i.r' li  l.r' lト |::::::::::::::::. ヽ  /: \   Xノ
              /:::l:| |匕リ   l匕リ .|:::li::l::ヽ::::ハ/: : : : : :\/
   rf「ト、        /:::::l〈""     _ "" |:::li::|ルハ//: : : : : : : :/
   |   i  ___r‐ルル> .「  ノ .イレハj: リ/: : : : : : : :/
 〈.ヽ/´ ̄/: : : : : : :| l|  |l |〈 {_て .フ´  /::/: : : : : : : : /
  ーl   l: : : : : : : :| l|  |l |トト、 xへ  /: : : : : : :: : :/
   人_人: : : : : : :! l|__|l lハ: ≧≠≦=虫: : : : : :イ
       ̄ ̄ ̄ ̄〈∧___|l |7∧: : : : : : : : : : : : : : : : ト、
             く\∧fi|l // ∧: : : : : : : : : : : : : : : |: \ _
            「二\ ∧./ /  ∧: : : : : : : : : : : : : : : : : : ヽ: : `ヽ
          [二.イ\/ /   ∧: : : : : : : : : : : : : : : : : : i: : : : :l
            {レ'       ∧: :┌ ‐:‐:‐:‐へ、 : : : : : : : : :.|
              \.         |: : :!: : : : : : : : : \: : : : : : : : l
              \      |: :.ノ: : : : : : : : : : : i : : : : : : :リ
                    \ ____人└:‐:‐:‐:‐:‐:‐:‐::┘: : : : : :/
                        /\____: : : : : : :_____.: :イ
                         /::::::::::::::::// ̄ ̄「:::::::::::::::::l|
                    /:::::::::::::::://     .|::::::::::::::::::l|
                      /:::::::::::::::://      |::::::::::::::::::l|
                   /::::::::::::::::://      |::::::::::::::::::l|
                      /:::::::::::::::::://      |::::::::::::::::::l|
                  /:::::::::::::::::://        !:::::::::::::::::l|
                   _/:::::::::::::::::://       |:::::::::::::::: l|
                 /〈:::::::::::::::::://           | :::::::::::::: l|
              /  `===ァ'           !:::::::::::::::::l|
                〈      //         |::::::::::::::: lト、
           /´⌒ Xヲ≧=_ァ'          ト==='' |
              {    }  ___j               |       |
           ` == ' ´ ̄             ト -- -- r '
                              ノ _五王j ハ
                              i´ ___} |
                              └─── ‐′
┌──────────────────────────┐
│ようやく>>128 で書いてた中期目標クリアですね、はかせ   ..|
│                                      .|
│単純な L-system でどこまでやれるか不安もありましたが   ..|
│樹木の枝分かれパターン~ヒマワリやバラの作成まで     ..|
│漕ぎ着けました                            .|
│                                      .|
│L-system はフラクタル図形や植物だけでなく          .|
│このスレで取り上げた貝の他にも珊瑚や海綿も生成できる  .|
│みたいです ぶっ飛んだ応用で3Dの町並み造成もあるとかw .|
│                                      .|
│このスレを覗いて、L-system やフラクタルに興味を持って   .|
│もらえたなら幸いです                         .|
└──────────────────────────┘
163L-System厨 :2017/11/19(日)14:40:26 ID:BiI
  ノ` ー'^ー‐'"ヽ
  ヽ       ヽ
  /   キ    l
  ヽ   タ    〉
  .ノ   |    ヽ
  )        /
  )        (
 ,ィ,ヽ_  __  _/   _
ア    V .∨\`  .rユ_j_j゙i
  .::i-/、'| ハ_i_ :ム  /`ヽ  >'
  /l/-、 !'  ゙_ヽ }./ ヽ、 〉'
イ!.|,,.l!  li  / l! lノ/   ./
、| | ,.-.、_    ''ヽ   ./
..l,、!ゝ    ̄マ ノ   /
::/l ヽ アフ7'ア   /
'  ¨<゙,介r'    ./
┌────────────────────────────┐
│知り合いに協力してもらって、遂にHondaモデルのオリジナル論文 .|
│Honda, H. “Description of the Form of the Tree-like Body:      ..|
│Effects of Branching Angle and the Branch Length on the Shape .|
│of the Tree-like Body.” J. Theor. Biol. 31 (1971). ゲット~      |
│                                         |
│この論文の効果により>>43のモデルがリビルドされるけど~     |
└────────────────────────────┘
ls ファイルの置換規則=rule
A = F[ &( a0 ) '( r2 ) !( wr ) B ] >( c ) &( a3 ) '( r1 ) !( wr ) A
B = F[ -( a2 ) '( r2 ) !( wr ) $C ] '( r1 ) !( wr ) C
C = F[ +( a2 ) '( r2 ) !( wr ) $B ] '( r1 ) !( wr ) B
ここで
r1:幹の伸張の減少率、幹の伸張が等比数列になる
r2:枝の伸張の減少率、枝の伸張が等比数列になる
a0:幹の分岐角
a2:枝の分岐角
a3:幹の分岐角2、a3=0で>>43と同じ直立した樹形、a3<>0で幹を傾斜させる効果あり
wr:太さの減少率、幹や枝の周径が等比数列になる 0.707 や 0.9 の値が良く見られる
c:広がり角、 137.5°または 137°

今回のポイントは a3 の追加で
これにより、制御パラメータがr1、r2、a0、a2、a3の5つに増えますが
>>43の樹形も含めてより多彩な樹形が表現できるようになります
164L-System厨 :2017/11/19(日)20:56:22 ID:qUM
  ,..-―-、  具体的にどういう樹形が出来るか見てみようと思うけど
  i  .ルハ、 }   左図:a0=a1=33.3°、a3=16.7°、r1=r2=0.85
  | l ゚ c゚ ノ! 中央図:a0=a1=30°、a3=20°、r1=0.9、r2=0.79
  |__j´丈 d|   右図:a0=a1=20°、a3=10°、r1=0.9、r2=0.75
  ソ_zュ__} となります








165L-System厨 :2017/11/19(日)21:06:29 ID:qUM
  ,..-―-、
  {  ノiハ、 }
  lw! ゚ ヮ゚ノj Lparser v2.1 の ls ファイルです
 8Uヾネノ]lつ
  <王王ハ 左から順に
   しU

#start
#Honda, H. “Description of the Form of the Tree-like Body:
#Effects of Branching Angle and the Branch Length on the Shape
#of the Tree-like Body.” J. Theor. Biol. 31 (1971).
#
#PLATE I
recursion 11
angle 33.3
thickness 15
shape 1
switch_yz 1
#
axiom c(12)FFAL
#
rule A = F[&'(.85)!(.9)B]>(137)&(16.7)'(.85)!(.9)A
rule B = F[-'(.85)!(.9)$C]'!(.9)C
rule C = F[+'(.85)!(.9)$B]'!(.9)B
#end

#start
#Honda, H. “Description of the Form of the Tree-like Body:
#Effects of Branching Angle and the Branch Length on the Shape
#of the Tree-like Body.” J. Theor. Biol. 31 (1971).
#
#PLATE III(d)
recursion 12
angle 30
thickness 15
shape 1
switch_yz 1
#
axiom c(12)FFAL
#
rule A = F[&'(.79)!(.9)B]>(137)&(20)'(.9)!(.9)A
rule B = F[-'(.79)!(.9)$C]'!(.9)C
rule C = F[+'(.79)!(.9)$B]'!(.9)B
#end
166L-System厨 :2017/11/19(日)21:14:13 ID:qUM
  ,..-―-、
  {  ノiハ、 } 残りの右図の Lparser v2.1 の ls ファイルです
  lw! >__<ノj 
 ⊂}8- ]lコ= ・ ・ ・ ・ ・ ・
  <王王ハ さらに改良を重ねた Fisher & Honda(1977) モデルは
   しU  実在の樹木とパラメーターを合わせているようです

#start
#Honda, H. “Description of the Form of the Tree-like Body:
#Effects of Branching Angle and the Branch Length on the Shape
#of the Tree-like Body.” J. Theor. Biol. 31 (1971).
#
#PLATE V(a)
recursion 11
angle 20
thickness 15
shape 1
switch_yz 1
#
axiom c(12)FFAL
#
rule A = F[&'(.75)!(.9)B]>(137)&(10)'(.9)!(.9)A
rule B = F[-'(.75)!(.9)$C]'!(.9)C
rule C = F[+'(.75)!(.9)$B]'!(.9)B
#end
167L-System厨 :2017/11/19(日)21:39:49 ID:qUM
            /        `丶、
          」∨               ヽ
          7                 '.
          /        ノ| ∧ `ト   N|   っ
.          /N      イ/ |/  ∨| ∧  |  っ
.        〃 Y⌒i  Ⅳ∩    ∩  }/V    -=ニ二三三三三
       /   {{{ |  | ∪    ∪ {{-=ニ三/ ̄ ̄`'く>三三三
         /ゝ _|  | ''       '' 人.三三|(‐~~‐)| |三三三
      /  厶-=ニ | :八‐-(_:::::::⌒)<∧ノ三三| ー--‐' |_|三三三
    -=ニ二三三三三\_,,,フ三三三三三三三三|  <・ )  「 三三三
二三三三三三三三三三三三三三三三三三ニ圦  {__>,,ノ三三三
三三三三三三三三三三三三三三三三三三三ニ≧===≦三三三
┌───────────────────────────┐
>>60 >>61 の七角形が間違っているのに気付いちゃったけど… |
│七角形を使って花を作ってる >>73 >>74 >>109 は問題無いね  |
└───────────────────────────┘
※間違い
七角形
L=[{-(30)ff+(30)f+(30)f+(60)z-(90)|-(90)z+(30)f+(30)f+(60)ff}]

※正解
七角形
L=[{-(30)ff+(30)f+(30)f+(60)z-(90)|-(90)z+(60)f+(30)f+(30)ff}]

新着レスの表示 | ここまで読んだ

名前: mail:





L-Systemシミュレーションスレ