自相似分形,突出显示第一次迭代

自相似分形,突出显示第一次迭代

我想绘制一些自相似分形并突出显示第一次迭代。我能够为谢尔宾斯基三角形做到这一点,尽管我的代码有点丑陋。(本文末尾包含一个最小的工作示例。)

但是如何为谢尔宾斯基地毯、盒形分形、康托尘、科赫曲线等实现类似的结果?谷歌上的 l 系统确实对我有帮助,因为它们通常只在高阶时看起来与分形相似。例如:我可以使用科赫曲线 l 系统适合我的目的吗?

正如承诺的那样,最终的代码是:

\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage{tikz}
\usetikzlibrary{lindenmayersystems}
\pgfdeclarelindenmayersystem{Sierpinski triangle}{
    \symbol{X}{\pgflsystemdrawforward}
    \symbol{Y}{\pgflsystemdrawforward}
    \rule{X -> X-Y+X+Y-X}
    \rule{Y -> YY}
}
\begin{document}

\begin{tikzpicture}
  \def\trianglewidth{5.5cm}
  \def\level{7}
  \fill[black] (0,0) -- ++(0:\trianglewidth) -- ++(120:\trianglewidth) -- cycle;
  \path l-system
  [l-system={Sierpinski triangle, axiom=X, step=\trianglewidth/(2^\level), order=\level, angle=-120},fill=blue!25];
  \path l-system
  [l-system={Sierpinski triangle, axiom=X, step=\trianglewidth/(2^1), order=1, angle=-120},fill=white];
\end{tikzpicture}  

\end{document}

相关内容