Skip to content

使用Python中的海龟作图绘制带绿叶的小树 #145

@Sogrey

Description

@Sogrey
import turtle

def tree(branch_len,t):
    if branch_len > 5:
        # 绘制树干
        t.forward(branch_len)

        if branch_len - 15 <= 5:
            t.pencolor("green")
        else:
            t.pencolor("black")

        # 改变画笔粗细
        new_pensize = branch_len // 5
        if new_pensize > 0:
            t.pensize(new_pensize)

        # 绘制右侧
        # 画笔向右旋转20度
        t.right(20)

        tree(branch_len-15,t) # 下一段树干长度是上一段的一半

        # 改变画笔粗细
        new_pensize = branch_len // 5
        if new_pensize > 0:
            t.pensize(new_pensize)

        # 绘制左侧
        # 画笔向左旋转40度
        t.left(40)

        tree(branch_len-15,t) # 下一段树干长度是上一段的一半

        t.right(20)

        if branch_len - 15 <= 5:
            t.pencolor("green")
        else:
            t.pencolor("black")

        t.backward(branch_len)

t = turtle.Turtle()
win = turtle.Screen() #新窗口
t.left(90)
t.pencolor("black")
t.pensize(15)

tree(70,t)
win.exitonclick()

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions