Hasty Briefsbeta

双语

Lindenmayer.jl: Defining recursive patterns in Julia

11 days ago
  • #Julia
  • #Fractals
  • #LSystems
  • Lindenmayer.jl 是一个用于创建L系统的软件包,L系统是通过规则定义的递归模式。
  • L系统由Aristid Lindenmayer于1968年提出,用于模拟植物生长和生物形态。
  • 该软件包使用Luxor.jl进行L系统的绘制。
  • 一个L系统由规则(搜索和替换)、初始状态和当前状态组成。
  • 示例:谢尔宾斯基三角形的L系统规则为'F' => 'G+F+Gt'和'G' => 'F-G-F'。
  • drawLSystem()函数通过可自定义参数(如前进距离和转向角度)评估并绘制L系统。
  • 规则中的字符对应海龟绘图命令(例如'F'表示前进,'+'表示顺时针转向)。
  • 额外功能包括通过'*'字符实现任意函数,以及使用evaluate()和render()进行自定义评估。
  • 可通过设置ENV['JULIA_DEBUG'] = Lindenmayer启用调试模式。