import math
try:
from swampy.TurtleWorld import * # 需要执行 pip install Swampy
except ImportError:
from TurtleWorld import *
def polyline(t, n, length, angle):
for i in range(n):
fd(t, length)
lt(t, angle)
def arc(t, r, angle):
arc_length = 2 * math.pi * r * abs(angle) / 360
n = int(arc_length / 4) + 1
step_length = arc_length / n
step_angle = float(angle) / n
# making a slight left turn before starting reduces
# the error caused by the linear approximation of the arc
lt(t, step_angle/2)
polyline(t, n, step_length, step_angle)
rt(t, step_angle/2)
def petal(t, r, angle):
for i in range(2):
arc(t, r, angle)
lt(t, 180-angle)
def flower(t, n, r, angle):
for i in range(n):
petal(t, r, angle)
lt(t, 360.0/n)
def move(t, length):
pu(t)
fd(t, leng