我正在尝试在 LaTeX 中使用 L 系统,但以下最小示例因错误而退出:
\documentclass[a4paper, pdftex]{book}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\draw [green!50!black, rotate=90]
[l-system={rule set={F -> FF-[-F+F]+[+F-F]}, axiom=F, order=4, step=2pt, randomize step percent=25, angle=30, randomize angle percent=5}]
lindenmayer system;
\end{tikzpicture}
\end{document}
错误是:
! Missing \endcsname inserted.
<to be read again>
\pgf@arrows@invertl
l.8 ...t=25, angle=30, randomize angle percent=5}]
更新:我似乎可能遗漏了以下内容:
\usetikzlibrary{lindenmayersystems}
顺便说一下,这会导致以下错误:
! I can't find file `tikzlibrarylindenmayersystems.code.tex'.
<argument> ...nput tikzlibrary\pgf@temp .code.tex
\catcode `\@ =\csname tikz...
有什么想法吗?
答案1
您的 pgf 版本是什么?l-systems 库似乎位于 pgf 的 CVS 版本中,而不是常规的 2.0 版本中。
答案2
我遇到了同样的问题。在我更新到较新的 TeX 安装(我认为是 TeX-Live 2010)后,一切都正常。Tikz 在 LaTeX 世界中相当新,而且似乎变化相当快。