用户:一只小可爱chara查看:0 回复:0 评论:0 创建时间:2021-06-19T18:27:48
【作品展示】

【作品介绍】
牛阿牛
【作品源代码】
from turtle import *
from random import *
t1 = Pen()
t2 = Pen()
def petal(size, start_angle, edge_color, petal_color, start_pos):
t1.penup()
t1.goto(start_pos)
t1.pendown()
t1.pencolor(edge_color)
t2.pencolor(edge_color)
t1.fillcolor(petal_color)
t2.fillcolor(edge_color)
t1.seth(start_angle)
t1.begin_fill()
t1.fd(size)
t1.lt(90)
t1.penup()
t2.penup()
t2.goto(t1.pos())
t2.pendown()
while (360+t1.heading()-90)%360 <= (start_angle + 60) % 360 \
or (start_angle >= 300 and t1.heading() < 90):
angle1 = randint(1,6)
angle2 = angle1*10
t2.seth(t1.heading()-90+angle2)
t2.begin_fill()
while abs(t2.heading()-(t2.towards(start_pos)-180))%90 >= angle2 -angle1/2:
t2.fd(1)
t1.circle(size,angle1)
t2.goto(t1.pos())
t2.seth(t1.heading()+90)
t2.fd(randint(size//20,size//8))
t2.end_fill()
t2.goto(t1.pos())
t1.pendown()
t1.goto(start_pos)
t1.end_fill()
def leaf(direct):
start_pos = t1.pos()
t1.pencolor('lawn green')
t1.fillcolor('green')
t1.begin_fill()
t1.pensize(5)
if direct == 'right':
d = 1
elif direct == 'left':
d = -1
t1.seth(90-d*60)
t1.circle(-100*d,60)
t1.circle(100*d,60)
t1.left(15*d)
t1.circle(-150*d,30)
t1.circle(150*d,30)
t1.goto(start_pos)
t1.end_fill()
t1.dot(30)
t1.sety(-300)
t1.pencolor("green")
t1.pensize(10)
t1.sety(-200)
leaf('left')
leaf('right')
t1.sety(-185)
t1.pencolor('green')
t1.pensize(10)
t1.sety(100)
t1.pensize(1)
t1.speed(0)
t2.speed(0)
for i in range(200,40,-50):
for j in range(6):
petal(i + randint(-20,20),(j*60+randint(30,60)+i*2)%360,\
'pink1','red',(0,100))
done()
【提示】
部分含有Python第三方库相关内容的作品,在海龟编辑器网页端无法运行哦!如遇到这种情况,可以打开下面的链接,下载海龟编辑器客户端:
https://python.codemao.cn