二.具體實例
0.櫻花樹文章源自四五設(shè)計網(wǎng)-http://www.wasochina.com/35567.html
from turtle import * from random import * from math import * def tree(n, l): pd () # 下筆 # 陰影效果 t = cos ( radians ( heading () + 45 ) ) / 8 + 0.25 pencolor ( t, t, t ) pensize ( n / 3 ) forward ( l ) # 畫樹枝 if n > 0: b = random () * 15 + 10 # 右分支偏轉(zhuǎn)角度 c = random () * 15 + 10 # 左分支偏轉(zhuǎn)角度 d = l * (random () * 0.25 + 0.7) # 下一個分支的長度 # 右轉(zhuǎn)一定角度,畫右分支 right ( b ) tree ( n - 1, d ) # 左轉(zhuǎn)一定角度,畫左分支 left ( b + c ) tree ( n - 1, d ) # 轉(zhuǎn)回來 right ( c ) else: # 畫葉子 right ( 90 ) n = cos ( radians ( heading () - 45 ) ) / 4 + 0.5 ran = random () # 這里相比于原來隨機添加了填充的圓圈,讓櫻花葉子看起來更多一點 if (ran > 0.7): begin_fill () circle ( 3 ) fillcolor ( 'pink' ) # 把原來隨機生成的葉子換成了統(tǒng)一的粉色 pencolor ( "pink" ) circle ( 3 ) if (ran > 0.7): end_fill () left ( 90 ) # 添加0.3倍的飄落葉子 if (random () > 0.7): pu () # 飄落 t = heading () an = -40 + random () * 40 setheading ( an ) dis = int ( 800 * random () * 0.5 + 400 * random () * 0.3 + 200 * random () * 0.2 ) forward ( dis ) setheading ( t ) # 畫葉子 pd () right ( 90 ) n = cos ( radians ( heading () - 45 ) ) / 4 + 0.5 pencolor ( n * 0.5 + 0.5, 0.4 + n * 0.4, 0.4 + n * 0.4 ) circle ( 2 ) left ( 90 ) pu () # 返回 t = heading () setheading ( an ) backward ( dis ) setheading ( t ) pu () backward ( l ) # 退回 bgcolor ( 0.956, 0.9255, 0.9882 ) # 設(shè)置背景色(把灰色換成淡紫色) ht () # 隱藏turtle speed ( 0 ) # 速度 1-10漸進,0 最快 tracer ( 0, 0 ) pu () # 抬筆 backward ( 50 ) left ( 90 ) # 左轉(zhuǎn)90度 pu () # 抬筆 backward ( 300 ) # 后退300 tree ( 12, 100 ) # 遞歸7層 done ()
文章源自四五設(shè)計網(wǎng)-http://www.wasochina.com/35567.html 文章源自四五設(shè)計網(wǎng)-http://www.wasochina.com/35567.html
繼續(xù)閱讀
我的微信
微信掃一掃

我的微信
惠生活福利社
微信掃一掃

我的公眾號
評論