Рисование l-string фракталов на Python
Одни из самых простейших фракталов - самоподобные строки с инструкциями. L-String фракталы. При рисовании возможны следующие команды:
- F вперед и рисовать линию
- f вперед без линии
- ‘+’ поворот вправо на угол
- ‘-’ поворот влево на угол
Задается первоначальная аксиома - формула, а также правила изменения этой формулы (rules). Затем рекурсивно эти правила применяются на формуле, так что получается длинная строка с командами рисования(“F+F-…”). И эта команда отображается на канвасе TKINTER, либо с помощью черепахи. Черепахой красивее, но медленнее. С разными аксиомами и правилами получаются очень красивые изображения.
Примеры аксиом и рисунков:
axiom = "FFFF"
rules = {"F":"F++F++"}
iterations = 12 # TOP: 16
angle = 45
axiom = "FFFF"
rules = {"F":"F++F++"}
iterations =11 # TOP: 16
angle = 120
axiom = "F"
rules = {"F":"F+FF+F+F+FF+F+"}
iterations = 4 # TOP: 16
angle = 90
axiom = "F"
rules = {"F":"F+F+++F+F+"}
iterations =9
angle = 60