绘制有相应数量叶子的树枝
树枝有合适的弧度
页面中随机布局多个树枝
import turtle
def main_(t, sPos):
t.up()
t.setpos(*sPos)
t.pensize(2)
cod = []
t.pd()
t.seth(90)
for i in range(0, 41):
t.fd(5)
if i % 5 == 0:
cod.append((t.xcor(), t.ycor(),t.heading()))
t.right(2)
t.up()
cod.append((t.xcor(), t.ycor(), t.heading()))
return cod
def draw_leaf(t, tPos, angle, flgUD = False):
t.up()
t.setpos(*tPos)
t.seth(angle)
fun = t.right
if flgUD:
fun = t.right
else:
fun = t.left
fun(30)
t.pd()
for _ in range(30):
t.fd(1)
fun(3)
pp = t.xcor(), t.ycor()
fun(90)
for _ in range(30):
t.fd(1)
fun(3)
t.up()
t.setpos(*pp)
t.pd()
t.goto(*tPos)
t.up()
t = turtle.Turtle()
t.ht()
turtle.tracer(0)
res = main_(t, (0, 0))
print(res)
for i in res[1:-2]:
draw_leaf(t, tPos = i[:2], angle = i[-1])
draw_leaf(t, tPos = i[:2], angle = i[-1], flgUD = True)
draw_leaf(t, tPos = res[-1][:2], angle = -45)
turtle.tracer(1)
turtle.done()