龙形曲线(Dragon Curve)
龙形曲线(Dragon Curve)又叫分形龙,是一种自相似碎形曲线的统称,因形似龙的蜿蜒盘曲而得名
使用黄金比例画龙形曲线
根据黄金比例画一条龙曲线。每次递归,第一步向左转32.89度,移动0.74倍原距离;第二个递归步骤向右转46.99度,移动原来距离的0.55倍。请查看这个网页(https://larryriddle.agnesscott.org/ifs/heighway/goldenDragon.htm)了解关于龙形黄线数学的细节
龙形曲线效果
画龙形曲线代码
龙形曲线不是由递归深度生成的,而是当距离小于1时停止递归生成的。
from turtle import *
import math
import random
def dragon_curve(x1, y1, x2, y2, turn, n):
dist = ((x2 - x1) ** 2 + (y2 - y1) ** 2) ** 0.5
if dist < 1:
goto(x2,