L-system curves

An L-system, or Lindenmayer system, is a parallel rewriting system and a type of formal grammar used to model the growth of biological organisms. L-systems can also be used to generate space-filling curves and to describe mathematical processes, such as fractals, through the iteration of production rules.

Here are some L-system rules I gathered from various sources. I apologize for missing attributions; some original sources are lost and I need to recover them. Each curve is interactive and can be modified as needed.

The intentional decision has been made not to support branching, usually represented by [ and ] symbols. Hence, no L-system rules for trees or plants. I acknowledge that these are powerful operations, yet my mental model suggests that they could designed as a fork operation, and I didn't explore this space yet.

order = 3 angle = 90 A => AFBFA-F-BFAFB+F+AFBFA B => BFAFB+F+AFBFA-F-BFAFB
order = 4 angle = 45 A => -FX X => FX-FY-FX+FY+FX+FY+FX+FY+FX-FY-FX-FY-FX-FY-FX+FY+FX F => E Y => FY
order = 5 angle = 90 A => +BF-AFA-FB+ B => -AF+BFB+FA-
order = 5 angle = 90 A => LFL+F+LFL L => -RF+LFL+FR- R => +LF-RFR-FL+
order = 4 angle = 90 A => BF-F-BFFFC-F-FC+F+BF-F-BFFFC-F-FC B => BFFFC-F-FC+F+B C => C+F+BF-F-BFFFC
order = 4 angle = 60 A => F++F++F F => F-F++F-F
order = 4 angle = 60 A => F++F++F F => F+F--F+F
order = 4 angle = 90 A => F+F+F+F F => F+F-F-F+F
order = 4 angle = 90 A => FF+FF+FF+FF F => F+F-F-F+F
order = 4 angle = 90 A => BF+F+BF+F B => BF-F+F-BF+F+BF-F+F-B
order = 5 angle = 60 A => FXF--FF--FF F => FF X => --FXF++FXF++FXF--
order = 4 angle = 60 A => --FAF++FAF++FAF-- F => FF
order = 5 angle = 60 A => BF+AF+B B => AF-BF-A
order = 6 angle = 90 A => B-B B => BFB-BFB
order = 8 angle = 90 A => A+BF+ B => -FA-B
order = 3 angle = 60 A => A+BF++BF-FA--FAFA-BF+ B => -FA+BFBF++BF+FA--FA-B
order = 3 angle = 30 A => -F++F-A-F--F+B---F--F+B+F++F-A+++F++F-A-F++F-A+++F--F+B-- B => +F++F-A-F--F+B+F--F+B---F--F+B---F++F-A+++F++F-A+++F--F+B F => E
order = 3 angle = 90 A => -YF X => XFX-YF-YF+FX+FX-YF-YFFX+YF+FXFXYF-FX+YF+FXFX+YF-FXYF-YF-FX+FX+YFYF- Y => +FXFX-YF-YF+FX+FXYF+FX-YFYF-FX-YF+FXYFYF-FX-YFFX+FX+YF-YF-FX+FX+YFY
order = 3 angle = 90 A => F+F+F+F F => F-F+F+FFF-F-F+F
order = 4 angle = 90 A => F-F-F-F F => FF-F+F-F-FF
order = 6 angle = 120 A => F+F+F F => F-F+F
order = 4 angle = 90 A => F+F+F+F F => FF+F++F+F
order = 4 angle = 90 A => F+F+F+F F => FF+F+F+F+FF
order = 5 angle = 90 A => F+F+F+F F => F+FF++F+F
order = 5 angle = 90 A => F+F+F+F F => F+F-F+F+F
order = 4 angle = 36 A => F++F++F++F++F F => F++F++F+++++F-F++F
order = 4 angle = 90 A => F+F+F+F F => FF+F-F+F+FF
order = 4 angle = 90 A => F+F+F+F F => FF+F+F+F+F+F-F
order = 8 angle = 45 A => F F => -F++F-
order = 4 angle = 72 A => F-F-F-F-F F => F-F++F+F-F-F
order = 20 angle = 90 A => A+BF+BF B => BF
order = 10 angle = 60 A => A+BF+B+BF+BF+BF+BF B => BF
order = 3 angle = 90 A => AF+BFB+FA-F-AFAFA-FBFB+ B => -AFAF+BFBFB+F+BF-AFA-FB