home *** CD-ROM | disk | FTP | other *** search
/ ftp.cs.arizona.edu / ftp.cs.arizona.edu.tar / ftp.cs.arizona.edu / icon / historic / v941.tgz / icon.v941src.tar / icon.v941src / ipl / gprocs / linddefs.icn < prev    next >
Text File  |  2000-07-29  |  18KB  |  425 lines

  1. ############################################################################
  2. #
  3. #    File:     linddefs.icn
  4. #
  5. #    Subject:  Procedure to produce table of L-systems
  6. #
  7. #    Author:   Ralph E. Griswold
  8. #
  9. #    Date:     November 22, 1997
  10. #
  11. ############################################################################
  12. #
  13. #   This file is in the public domain.
  14. #
  15. ############################################################################
  16. #
  17. #  This procedure produces a table of L-systems.
  18. #
  19. ############################################################################
  20. #
  21. #  Links:  lindrec
  22. #
  23. ############################################################################
  24.  
  25. link lindrec
  26.  
  27. procedure linddefs()
  28.    local linden
  29.  
  30.    linden := table()
  31.  
  32.    linden["fibbush"] := lsys_0l("", table(), 0, 90)
  33.    linden["fibbush"].rewrite["A"] := "[B/////'B///////'B]"
  34.    linden["fibbush"].rewrite["B"] := "[&IL!A]"
  35.    linden["fibbush"].rewrite["I"] := "FL"
  36.    linden["fibbush"].rewrite["F"] := "F/////I"
  37.    linden["fibbush"].rewrite["L"] := "['''^^{-F+F+F-|-F+F+F}]"
  38.    linden["fibbush"].gener := 3
  39.    linden["fibbush"].length := 3
  40.    linden["fibbush"].axiom := "A"
  41.    linden["fibbush"].angle := 22.5
  42.    linden["ebush"] := lsys_0l("", table(), 0, 90)
  43.    linden["ebush"].rewrite["P"] := "I+[P+O]--//[--L]I[++L]-[PO]++PO"
  44.    linden["ebush"].rewrite["I"] := "FS[//&&L][//^^L]FS"
  45.    linden["ebush"].rewrite["S"] := "SFS"
  46.    linden["ebush"].rewrite["L"] := "['{+f-ff-f+|+f-ff-f}]"
  47.    linden["ebush"].rewrite["O"] := "[&&&D`/W////W////W////W////W]"
  48.    linden["ebush"].rewrite["D"] := "FF"
  49.    linden["ebush"].rewrite["W"] := "[`^F][{&&&&-f+f|-f+f}]"
  50.    linden["ebush"].axiom := "P"
  51.    linden["ebush"].angle := 18.0
  52.    linden["ebush"].gener := 3
  53.    linden["ebush"].length := 3
  54.    linden["bush"] := lsys_0l("", table(), 0, 90)
  55.    linden["bush"].rewrite["F"] := "FF-[-F+F+F]+[+F-F-F]"
  56.    linden["bush"].axiom := "++++F"
  57.    linden["bush"].angle := 22.5
  58.    linden["cesaro"] := lsys_0l("", table(), 0, 90)
  59.    linden["cesaro"].rewrite["X"] := "----F!X!++++++++F!X!----"
  60.    linden["cesaro"].rewrite["F"] := ""
  61.    linden["cesaro"].gener := 10
  62.    linden["cesaro"].length := 3
  63.    linden["cesaro"].axiom := "FX"
  64.    linden["cesaro"].angle := 10.58823529
  65.    linden["curve1"] := lsys_0l("", table(), 0, 90)
  66.    linden["curve1"].rewrite["F"] := "FF-F-F-F-F-F+F"
  67.    linden["curve1"].axiom := "F-F-F-F-"
  68.    linden["curve1"].angle := 90.0
  69.    linden["curve2"] := lsys_0l("", table(), 0, 90)
  70.    linden["curve2"].rewrite["F"] := "FF-F+F-F-FF"
  71.    linden["curve2"].axiom := "F-F-F-F-"
  72.    linden["curve2"].angle := 90.0
  73.    linden["curve3"] := lsys_0l("", table(), 0, 90)
  74.    linden["curve3"].rewrite["F"] := "F-FF--F-F"
  75.    linden["curve3"].axiom := "F-F-F-F-"
  76.    linden["curve3"].angle := 90.0
  77.    linden["curve4"] := lsys_0l("", table(), 0, 90)
  78.    linden["curve4"].rewrite["X"] := "YF+XF+Y"
  79.    linden["curve4"].rewrite["Y"] := "XF-YF-X"
  80.    linden["curve4"].axiom := "YF"
  81.    linden["curve4"].angle := 60.0
  82.    linden["curve4"].gener := 5
  83.    linden["dragon"] := lsys_0l("", table(), 0, 90)
  84.    linden["dragon"].rewrite["X"] := "-FX++FY-"
  85.    linden["dragon"].rewrite["Y"] := "+FX--FY+"
  86.    linden["dragon"].rewrite["F"] := ""
  87.    linden["dragon"].axiom := "FX"
  88.    linden["dragon"].angle := 45.0
  89.    linden["dragon"].gener := 10
  90.    linden["dragon1"] := lsys_0l("", table(), 0, 90)
  91.    linden["dragon1"].rewrite["r"] := "-Fl-r"
  92.    linden["dragon1"].rewrite["l"] := "l+rF+"
  93.    linden["dragon1"].axiom := "Fl"
  94.    linden["dragon1"].gener := 14
  95.    linden["dragonc"] := lsys_0l("", table(), 0, 90)
  96.    linden["dragonc"].rewrite["X"] := "X-YF-"
  97.    linden["dragonc"].rewrite["Y"] := "+FX+Y"
  98.    linden["dragonc"].axiom := "X"
  99.    linden["dragonc"].angle := 90.0
  100.    linden["dragonc"].gener := 10
  101.    linden["fass1"] := lsys_0l("", table(), 0, 90)
  102.    linden["fass1"].rewrite["R"] := "-LFLF+RFRFR+F+RF-LFL-FR"
  103.    linden["fass1"].rewrite["L"] := "LF+RFR+FL-F-LFLFL-FRFR+"
  104.    linden["fass1"].axiom := "-L"
  105.    linden["fass1"].angle := 90.0
  106.    linden["fass2"] := lsys_0l("", table(), 0, 90)
  107.    linden["fass2"].rewrite["R"] := "-LFLFLF+RFR+FL-F-LF+RFR+FLF+RFRF-LFL-FRFR"
  108.    linden["fass2"].rewrite["L"] := "LFLF+RFR+FLFL-FRF-LFL-FR+F+RF-LFL-FRFRFR+"
  109.    linden["fass2"].axiom := "-L"
  110.    linden["fass2"].angle := 90.0
  111.    linden["flake3"] := lsys_0l("", table(), 0, 90)
  112.    linden["flake3"].rewrite["X"] := "++FXFY--FX--FY"
  113.    linden["flake3"].rewrite["Y"] := "FYFX+++FYFX++FX++FYFX|+FX--FY--FXFY++"
  114.    linden["flake3"].rewrite["F"] := ""
  115.    linden["flake3"].axiom := "FX"
  116.    linden["flake3"].angle := 30.0
  117.    linden["flake3"].gener := 10
  118.    linden["hilbert"] := lsys_0l("", table(), 0, 90)
  119.    linden["hilbert"].rewrite["X"] := "-YF+XFX+FY-"
  120.    linden["hilbert"].rewrite["Y"] := "+XF-YFY-FX+"
  121.    linden["hilbert"].axiom := "X"
  122.    linden["hilbert"].angle := 90.0
  123.    linden["hilbert"].gener := 10
  124.    linden["island1"] := lsys_0l("", table(), 0, 90)
  125.    linden["island1"].rewrite["F"] := "FFFF-F+F+F-F[-FF+F+FF+F]FF"
  126.    linden["island1"].axiom := "F+F+F+F"
  127.    linden["island1"].angle := 90.0
  128.    linden["island2"] := lsys_0l("", table(), 0, 90)
  129.    linden["island2"].rewrite["F"] := "F+F-FF-F-FF++FF-F+FF+F+FF--FFF"
  130.    linden["island2"].axiom := "F+F+F+F"
  131.    linden["island2"].angle := 90.0
  132.    linden["island2"].gener := 4
  133.    linden["island2"].length := 2
  134.    linden["koch1"] := lsys_0l("", table(), 0, 90)
  135.    linden["koch1"].rewrite["F"] := "F+F--F+F"
  136.    linden["koch1"].axiom := "F--F--F"
  137.    linden["koch1"].angle := 60.0
  138.    linden["koch1"].gener := 4
  139.    linden["koch1"].length := 4
  140.    linden["koch2"] := lsys_0l("", table(), 0, 90)
  141.    linden["koch2"].rewrite["F"] := "-F+++F---F+"
  142.    linden["koch2"].axiom := "F---F---F---F"
  143.    linden["koch2"].angle := 30.0
  144.    linden["koch2"].gener := 6
  145.    linden["koch2"].length := 4
  146.    linden["koch3"] := lsys_0l("", table(), 0, 90)
  147.    linden["koch3"].rewrite["F"] := "F-F+F+FF-F-F+F"
  148.    linden["koch3"].axiom := "F-F-F-F"
  149.    linden["koch3"].angle := 90.0
  150.    linden["koch3"].gener := 6
  151.    linden["koch3"].length := 4
  152.    linden["koch4"] := lsys_0l("", table(), 0, 90)
  153.    linden["koch4"].rewrite["F"] := "+F--F++F-"
  154.    linden["koch4"].axiom := "F++++F++++F"
  155.    linden["koch4"].angle := 30.0
  156.    linden["koch4"].gener := 5
  157.    linden["koch4"].length := 3
  158.    linden["koch5"] := lsys_0l("", table(), 0, 90)
  159.    linden["koch5"].rewrite["F"] := "F+F-F-FFF+F+F-F"
  160.    linden["koch5"].axiom := "F+F+F+F"
  161.    linden["koch5"].angle := 90.0
  162.    linden["koch6"] := lsys_0l("", table(), 0, 90)
  163.    linden["koch6"].rewrite["F"] := "F-FF+FF+F+F-F-FF+F+F-F-FF-FF+F"
  164.    linden["koch6"].axiom := "F+F+F+F"
  165.    linden["koch6"].angle := 90.0
  166.    linden["koch7"] := lsys_0l("", table(), 0, 90)
  167.    linden["koch7"].rewrite["F"] := "F+F-F+F+F"
  168.    linden["koch7"].axiom := "F+F+F+F"
  169.    linden["koch7"].gener := 4
  170.    linden["koch8"] := lsys_0l("", table(), 0, 90)
  171.    linden["koch8"].rewrite["F"] := "F+F--F+F"
  172.    linden["koch8"].axiom := "F"
  173.    linden["koch8"].angle := 60.0
  174.    linden["lakeisle"] := lsys_0l("", table(), 0, 90)
  175.    linden["lakeisle"].rewrite["F"] := "F-f+FF-F-FF-Ff-FF+f-FF+F+FF+Ff+FFF"
  176.    linden["lakeisle"].rewrite["f"] := "ffffff"
  177.    linden["lakeisle"].axiom := "F-F-F-F"
  178.    linden["lakeisle"].gener := 2
  179.    linden["leaf1"] := lsys_0l("", table(), 0, 90)
  180.    linden["leaf1"].rewrite["H"] := "J"
  181.    linden["leaf1"].rewrite["P"] := "X"
  182.    linden["leaf1"].rewrite["X"] := "F[+AAAA]FY"
  183.    linden["leaf1"].rewrite["E"] := "H"
  184.    linden["leaf1"].rewrite["B"] := "E"
  185.    linden["leaf1"].rewrite["J"] := "Y"
  186.    linden["leaf1"].rewrite["O"] := "P"
  187.    linden["leaf1"].rewrite["A"] := "N"
  188.    linden["leaf1"].rewrite["Y"] := "F[-BBBB]FX"
  189.    linden["leaf1"].rewrite["N"] := "O"
  190.    linden["leaf1"].axiom := "X"
  191.    linden["leaf1"].angle := 45.0
  192.    linden["leaf1"].gener := 10
  193.    linden["leaf2"] := lsys_0l("", table(), 0, 90)
  194.    linden["leaf2"].rewrite["X"] := "A"
  195.    linden["leaf2"].rewrite["B"] := "F[-Y]FA"
  196.    linden["leaf2"].rewrite["A"] := "F[+X]BF"
  197.    linden["leaf2"].rewrite["Y"] := "B"
  198.    linden["leaf2"].axiom := "A"
  199.    linden["leaf2"].angle := 45.0
  200.    linden["leaf2"].gener := 14
  201.    linden["peano1"] := lsys_0l("", table(), 0, 90)
  202.    linden["peano1"].rewrite["F"] := "F-F+F+F+F-F-F-F+F"
  203.    linden["peano1"].axiom := "F-F-F-F"
  204.    linden["peano1"].angle := 90.0
  205.    linden["peano2"] := lsys_0l("", table(), 0, 90)
  206.    linden["peano2"].rewrite["X"] := "XY-F-FXY++F++FXY"
  207.    linden["peano2"].rewrite["Y"] := "-F-FXY"
  208.    linden["peano2"].axiom := "FXY++F++FXY++F"
  209.    linden["peano2"].angle := 45.0
  210.    linden["peano2"].gener := 4
  211.    linden["peano2"].length := 7
  212.    linden["peano3"] := lsys_0l("", table(), 0, 90)
  213.    linden["peano3"].rewrite["X"] := "XFYFX+F+YFXFY-F-XFYFX"
  214.    linden["peano3"].rewrite["Y"] := "YFXFY-F-XFYFX+F+YFXFY"
  215.    linden["peano3"].axiom := "X"
  216.    linden["peano3"].angle := 90.0
  217.    linden["penrose1"] := lsys_0l("", table(), 0, 90)
  218.    linden["penrose1"].rewrite["X"] := "+YF--ZF[---WF--XF]+"
  219.    linden["penrose1"].rewrite["Z"] := "--YF++++WF[+ZF++++XF]--XF"
  220.    linden["penrose1"].rewrite["W"] := "YF++ZF----XF[-YF----WF]++"
  221.    linden["penrose1"].rewrite["Y"] := "-WF++XF[+++YF++ZF]-"
  222.    linden["penrose1"].rewrite["F"] := ""
  223.    linden["penrose1"].axiom := "+WF--XF---YF--ZF"
  224.    linden["penrose1"].angle := 36.0
  225.    linden["penrose2"] := lsys_0l("", table(), 0, 90)
  226.    linden["penrose2"].rewrite["X"] := "+YF--ZF[---WF--XF]+"
  227.    linden["penrose2"].rewrite["Z"] := "--YF++++WF[+ZF++++XF]--XF"
  228.    linden["penrose2"].rewrite["W"] := "YF++ZF----XF[-YF----WF]++"
  229.    linden["penrose2"].rewrite["Y"] := "-WF++XF[+++YF++ZF]-"
  230.    linden["penrose2"].rewrite["F"] := ""
  231.    linden["penrose2"].axiom := "++ZF----XF-YF----WF"
  232.    linden["penrose2"].angle := 36.0
  233.    linden["penrose2"].gener := 5
  234.    linden["penrose2"].length := 10
  235.    linden["penrose3"] := lsys_0l("", table(), 0, 90)
  236.    linden["penrose3"].rewrite["X"] := "+YF--ZF[---WF--XF]+"
  237.    linden["penrose3"].rewrite["Z"] := "--YF++++WF[+ZF++++XF]--XF"
  238.    linden["penrose3"].rewrite["W"] := "YF++ZF----XF[-YF----WF]++"
  239.    linden["penrose3"].rewrite["Y"] := "-WF++XF[+++YF++ZF]-"
  240.    linden["penrose3"].rewrite["F"] := ""
  241.    linden["penrose3"].axiom := "[X]++[X]++[X]++[X]++[X]"
  242.    linden["penrose3"].angle := 36.0
  243.    linden["penrose3"].gener := 5
  244.    linden["penrose3"].length := 10
  245.    linden["penrose4"] := lsys_0l("", table(), 0, 90)
  246.    linden["penrose4"].rewrite["X"] := "+YF--ZF[---WF--XF]+"
  247.    linden["penrose4"].rewrite["Z"] := "--YF++++WF[+ZF++++XF]--XF"
  248.    linden["penrose4"].rewrite["W"] := "YF++ZF----XF[-YF----WF]++"
  249.    linden["penrose4"].rewrite["Y"] := "-WF++XF[+++YF++ZF]-"
  250.    linden["penrose4"].rewrite["F"] := ""
  251.    linden["penrose4"].axiom := "[Y]++[Y]++[Y]++[Y]++[Y]"
  252.    linden["penrose4"].angle := 36.0
  253.    linden["penrose4"].gener := 5
  254.    linden["penrose4"].length := 10
  255.    linden["penrosed"] := lsys_0l("", table(), 0, 90)
  256.    linden["penrosed"].rewrite["X"] := "+YF--ZF[---WF--XF]+"
  257.    linden["penrosed"].rewrite["Z"] := "--YF++++WF[+ZF++++XF]--XF"
  258.    linden["penrosed"].rewrite["W"] := "YF++ZF----XF[-YF----WF]++"
  259.    linden["penrosed"].rewrite["Y"] := "-WF++XF[+++YF++ZF]-"
  260.    linden["penrosed"].rewrite["F"] := ""
  261.    linden["penrosed"].axiom := "[X][Y]++[X][Y]++[X][Y]++[X][Y]++[X][Y]"
  262.    linden["penrosed"].angle := 36.0
  263.    linden["penrosed"].length := 40
  264.    linden["plant01"] := lsys_0l("", table(), 0, 90)
  265.    linden["plant01"].rewrite["F"] := "F[+F]F[-F]F"
  266.    linden["plant01"].axiom := "F"
  267.    linden["plant01"].angle := 25.71428571
  268.    linden["plant01"].gener := 10
  269.    linden["plant02"] := lsys_0l("", table(), 0, 90)
  270.    linden["plant02"].rewrite["F"] := "F[+F]F[-F][F]"
  271.    linden["plant02"].axiom := "F"
  272.    linden["plant02"].angle := 20.0
  273.    linden["plant03"] := lsys_0l("", table(), 0, 90)
  274.    linden["plant03"].rewrite["F"] := "FF-[-F+F+F]+[+F-F-F]"
  275.    linden["plant03"].axiom := "F"
  276.    linden["plant03"].angle := 22.5
  277.    linden["plant03"].gener := 4
  278.    linden["plant04"] := lsys_0l("", table(), 0, 90)
  279.    linden["plant04"].rewrite["X"] := "F[+X]F[-X]+X"
  280.    linden["plant04"].rewrite["F"] := "FF"
  281.    linden["plant04"].axiom := "X"
  282.    linden["plant04"].angle := 20.0
  283.    linden["plant04"].gener := 5
  284.    linden["plant05"] := lsys_0l("", table(), 0, 90)
  285.    linden["plant05"].rewrite["X"] := "F[+X][-X]FX"
  286.    linden["plant05"].rewrite["F"] := "FF"
  287.    linden["plant05"].axiom := "X"
  288.    linden["plant05"].angle := 25.71428571
  289.    linden["plant05"].gener := 5
  290.    linden["plant06"] := lsys_0l("", table(), 0, 90)
  291.    linden["plant06"].rewrite["X"] := "F-[[X]+X]+F[+FX]-X"
  292.    linden["plant06"].rewrite["F"] := "FF"
  293.    linden["plant06"].axiom := "X"
  294.    linden["plant06"].angle := 22.5
  295.    linden["plant06"].gener := 5
  296.    linden["plant07"] := lsys_0l("", table(), 0, 90)
  297.    linden["plant07"].rewrite["X"] := "X[-FFF][+FFF]FX"
  298.    linden["plant07"].rewrite["Z"] := "ZFX[+Z][-Z]"
  299.    linden["plant07"].axiom := "Z"
  300.    linden["plant07"].angle := 25.71428571
  301.    linden["plant07"].gener := 5
  302.    linden["plant08"] := lsys_0l("", table(), 0, 90)
  303.    linden["plant08"].rewrite["S"] := "[+++Z][---Z]TS"
  304.    linden["plant08"].rewrite["H"] := "-Z[+H]L"
  305.    linden["plant08"].rewrite["Z"] := "+H[-Z]L"
  306.    linden["plant08"].rewrite["L"] := "[-FFF][+FFF]F"
  307.    linden["plant08"].rewrite["T"] := "TL"
  308.    linden["plant08"].axiom := "SLFFF"
  309.    linden["plant08"].angle := 18.0
  310.    linden["plant08"].gener := 6
  311.    linden["plant08"].length := 8
  312.    linden["plant09"] := lsys_0l("", table(), 0, 90)
  313.    linden["plant09"].rewrite["X"] := "X[-FFF][+FFF]FX"
  314.    linden["plant09"].rewrite["Y"] := "YFX[+Y][-Y]"
  315.    linden["plant09"].axiom := "Y"
  316.    linden["plant09"].angle := 25.71428571
  317.    linden["plant09"].gener := 5
  318.    linden["plant10"] := lsys_0l("", table(), 0, 90)
  319.    linden["plant10"].rewrite["F"] := "F[+FF][-FF]F[+FF][-FF]F"
  320.    linden["plant10"].axiom := "F"
  321.    linden["plant10"].angle := 36.0
  322.    linden["plant10"].gener := 3
  323.    linden["plant11"] := lsys_0l("", table(), 0, 90)
  324.    linden["plant11"].rewrite["F"] := "F[+F[+F][-F]F][-F[+F][-F]F]F[+F][-F]F"
  325.    linden["plant11"].axiom := "F"
  326.    linden["plant11"].angle := 30.0
  327.    linden["plant11"].gener := 3
  328.    linden["plant11"].length := 10
  329.    linden["quadgos"] := lsys_0l("", table(), 0, 90)
  330.    linden["quadgos"].rewrite["R"] := "+FLFL-FR-FR+FL+FLFR+FL-FRFR-FL-FR+FLFRFR-FL-FRFL+FL+FR-FR-FL+FL+FRFR"
  331.    linden["quadgos"].rewrite["L"] := "FLFL-FR-FR+FL+FL-FR-FRFL+FR+FLFLFR-FL+FR+FLFL+FR-FLFR-FR-FL+FL+FRFR-"
  332.    linden["quadgos"].rewrite["F"] := ""
  333.    linden["quadgos"].axiom := "-FR"
  334.    linden["quadgos"].angle := 90.0
  335.    linden["quadkoch"] := lsys_0l("", table(), 0, 90)
  336.    linden["quadkoch"].rewrite["F"] := "F+FF-FF-F-F+F+FF-F-F+F+FF+FF-F"
  337.    linden["quadkoch"].axiom := "FX++FX++FX++FX++FX"
  338.    linden["quadkoch"].angle := 90.0
  339.    linden["quartet"] := lsys_0l("", table(), 0, 90)
  340.    linden["quartet"].rewrite["H"] := "-"
  341.    linden["quartet"].rewrite["B"] := "FB+FA-FB-JFBFA"
  342.    linden["quartet"].rewrite["J"] := "+"
  343.    linden["quartet"].rewrite["A"] := "FBFA+HFA+FB-FA"
  344.    linden["quartet"].rewrite["F"] := ""
  345.    linden["quartet"].axiom := "FB"
  346.    linden["quartet"].angle := 90.0
  347.    linden["quartet"].gener := 8
  348.    linden["sier1"] := lsys_0l("", table(), 0, 90)
  349.    linden["sier1"].rewrite["X"] := "+FXF-FXF-FXF+"
  350.    linden["sier1"].rewrite["F"] := "FXF"
  351.    linden["sier1"].axiom := "F"
  352.    linden["sier1"].angle := 120.0
  353.    linden["sier1"].gener := 5
  354.    linden["sier2"] := lsys_0l("", table(), 0, 90)
  355.    linden["sier2"].rewrite["X"] := "--FXF++FXF++FXF--"
  356.    linden["sier2"].rewrite["F"] := "FF"
  357.    linden["sier2"].axiom := "FXF--FF--FF"
  358.    linden["sier2"].angle := 60.0
  359.    linden["sier2"].gener := 5
  360.    linden["sier3"] := lsys_0l("", table(), 0, 90)
  361.    linden["sier3"].rewrite["F"] := "F[-F]F"
  362.    linden["sier3"].axiom := "F-F-F"
  363.    linden["sier3"].angle := 120.0
  364.    linden["sier3"].gener := 5
  365.    linden["siersqar"] := lsys_0l("", table(), 0, 90)
  366.    linden["siersqar"].rewrite["F"] := "FF+F+F+F+FF"
  367.    linden["siersqar"].axiom := "F+F+F+F"
  368.    linden["siersqar"].angle := 90.0
  369.    linden["siersqar"].gener := 4
  370.    linden["snoflake"] := lsys_0l("", table(), 0, 90)
  371.    linden["snoflake"].rewrite["F"] := "F-F+F+F-F"
  372.    linden["snoflake"].axiom := "+F"
  373.    linden["snoflake"].gener := 4
  374.    linden["space1"] := lsys_0l("", table(), 0, 90)
  375.    linden["space1"].rewrite["X"] := "YFXFY+F+YFXFY-F-XFYFX"
  376.    linden["space1"].rewrite["Y"] := "YFXFY-F-XFYFX+F+YFXFY"
  377.    linden["space1"].axiom := "X"
  378.    linden["space1"].gener := 3
  379.    linden["sphinx"] := lsys_0l("", table(), 0, 90)
  380.    linden["sphinx"].rewrite["X"] := "+FF-YFF+FF--FFFXF--YFFFYFFF"
  381.    linden["sphinx"].rewrite["G"] := "GG"
  382.    linden["sphinx"].rewrite["Y"] := "-FF+XFF-FF++FFFYF++XFFFXFFF"
  383.    linden["sphinx"].rewrite["F"] := "GG"
  384.    linden["sphinx"].axiom := "X"
  385.    linden["sphinx"].angle := 60.0
  386.    linden["sphinx"].gener := 5
  387.    linden["sqgasket"] := lsys_0l("", table(), 0, 90)
  388.    linden["sqgasket"].rewrite["X"] := "+FXF+FXF+FXF+FXF"
  389.    linden["sqgasket"].rewrite["F"] := "FF"
  390.    linden["sqgasket"].axiom := "X"
  391.    linden["sqgasket"].angle := 90.0
  392.    linden["sqgasket"].gener := 5
  393.    linden["square"] := lsys_0l("", table(), 0, 90)
  394.    linden["square"].rewrite["F"] := "FF+F+F+F+FF"
  395.    linden["square"].axiom := "F+F+F+F"
  396.    linden["square"].angle := 90.0
  397.    linden["tile"] := lsys_0l("", table(), 0, 90)
  398.    linden["tile"].rewrite["X"] := "[F+F+F+F[---X-Y]+++++F++++++++F-F-F-F]"
  399.    linden["tile"].rewrite["Y"] := "[F+F+F+F[---Y]+++++F++++++++F-F-F-F]"
  400.    linden["tile"].axiom := "X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X"
  401.    linden["tile"].angle := 15.0
  402.    linden["tile"].length := 10
  403.    linden["tree"] := lsys_0l("", table(), 0, 90)
  404.    linden["tree"].rewrite["X"] := "[-FX]+FX"
  405.    linden["tree"].axiom := "+++FX"
  406.    linden["tree"].angle := 30.0
  407.    linden["tree"].gener := 8
  408.    linden["tree"].length := 10
  409.    linden["tree1"] := lsys_0l("", table(), 0, 90)
  410.    linden["tree1"].rewrite["X"] := "[-FX]+FX"
  411.    linden["tree1"].axiom := "+++FX"
  412.    linden["tree1"].angle := 30.0
  413.    linden["tree1"].gener := 5
  414.    linden["tree1"].length := 8
  415.    linden["tree2"] := lsys_0l("", table(), 0, 90)
  416.    linden["tree2"].rewrite["X"] := "+FY"
  417.    linden["tree2"].rewrite["Y"] := "-FX"
  418.    linden["tree2"].rewrite["F"] := "FF-[XY]+[XY]"
  419.    linden["tree2"].axiom := "++++F"
  420.    linden["tree2"].angle := 22.5
  421.  
  422.    return linden
  423.  
  424. end
  425.