Interested Article - Кривая дракона
- 2020-12-31
- 1
Кривая дракона — общее название для некоторых фрактальных кривых , которые могут быть аппроксимированы рекурсивными методами, такими как L-системы .
Дракон Хартера — Хейтуэя
Дракон Хартера , также известный как дракон Хартера — Хейтуэя.
Он был описан в 1967 году Мартином Гарднером в колонке «Математические игры» журнала « Scientific American ». Многие из свойств фрактала были описаны Чендлером Дэвисом ( Chandler Davis) и Дональдом Кнутом .
Фрактал может быть записан как L-система с параметрами:
- угол равен 90° или pi/2
- начальная строка — FX
-
правила преобразования строк:
- X X+YF+
- Y -FX-Y
Кроме того, фрактал может быть описан системой итерируемых функций на комплексной плоскости:
- .
Берём отрезок, сгибаем его пополам. Затем многократно повторяем итерацию. Если после этого снова разогнуть получившуюся (сложенную) линию так, чтобы все углы были равны 90°, мы получим драконову ломаную.
Примеры
import turtle turtle.hideturtle() turtle.tracer(0) turtle.penup() turtle.setpos(-100, -150) turtle.pendown() axiom, tempAx, logic, count = 'FX', '', {'X': 'X+YF+', 'Y': '−FX−Y'}, 15 for i in range(count): for j in axiom: tempAx += logic[j] if j in logic else j axiom, tempAx = tempAx, '' for k in axiom: if k == 'F': turtle.forward(2.5) elif k == '+': turtle.right(90) elif k == '−': turtle.left(90) turtle.update() turtle.mainloop()
Ссылки
- Weisstein, Eric W. (англ.) на сайте Wolfram MathWorld .
- 2020-12-31
- 1