Turtle繪製分形樹

2021-08-20 19:13:11 字數 1101 閱讀 6402

import turtle

def draw_branch(branch_length):

if branch_length > 5: #限定繪製的樹枝(包括樹幹、樹枝和樹葉)長度至少大於5

if(branch_length<=20): #如果長度小於20,即可判定是樹葉,繪製成綠色

turtle.color('green')

else:

turtle.color('brown')

turtle.forward(branch_length) #繪製樹幹

turtle.right(20)

draw_branch(branch_length-15) #繪製每個節點分叉右側的樹枝

turtle.left(40)

draw_branch(branch_length - 15) #繪製每個節點分叉左側的樹枝

if (branch_length > 20): #如果長度大於20,即可判定是樹幹或者樹枝,繪製成棕色

turtle.color('brown')

turtle.right(20)

turtle.backward(branch_length) #左右側樹枝繪製好,返回節點處

def main():

turtle.left(90)

turtle.penup()

turtle.backward(150)

turtle.pendown()

turtle.color('brown')

draw_branch(80) #樹枝(其實是樹幹)初始長度為80

#設定後面的樹枝隨著樹的增長長度依次減15

turtle.exitonclick()

if __name__=='__main__':

main()

最後的效果圖如下:

注:如果**中的遞迴部分理解起來有點困難,最好是執行一下,根據繪圖的過程理解會比較容易。

Python使用Turtle繪製分形樹

2020 02 25 python使用turtle繪製分形樹 效果如下 3功能 利用遞迴繪製分型樹 4版本 1.0 5日期 2020 02 25 6 78 import turtle910 defdraw branch branch length 11 12繪製分型樹 13 param branch...

Python繪製分形樹 二

首先我們來分析一下,繪製分形樹大概分以下4個部分 繪製右側樹枝 返回樹枝節點 繪製左側樹枝 返回樹枝節點 根據以上4步,寫乙個遞迴函式,完成我們的需求 def draw branch branch length 繪製樹枝 if branch length 5 turtle.forward branc...

Python繪製分形樹 一

一步一步了解turtle這個庫,先繪製個五角星練手 畫布turtle.screensize 800,600,green turtle.screensize 返回預設大小 400,300 複製 畫筆控制命令 turtle.down 落下畫筆,進行繪製 turtle.up 抬起畫筆,不進行繪製 turt...