画年兽嘛,其实是一件特别费脑细胞而且特别麻烦的事——特别是在坐标、线段长度等参数还没有确定的情况下。本人冒着头发掉光的危险,画了一个年兽(???)(如下图)
快过年了,先给各位拜个早年~嘿嘿,祝看到这篇文章的各位身体平安,心想事成,万事如意噢~
好叻废话不多说,现在我就把做法分享给各位
1.首先导入turtle
from turtle import *
#或 import turtle
用from···import···是因为后期在编写程序的时候可以简写程序。
例如:turtle.fd()可以简写成fd()#forward可以简写成fd
2.设置左上角标题,屏幕长宽,画笔速度、宽度。然后隐藏画笔
title('年兽来咯~~~')#设置左上角标题为‘年兽来咯~~~’
screensize(1000,900,'red')#设置屏幕长,宽,颜色
speed(0)#设置画笔速度(最快为0)
pensize(5)#设置画笔的宽度
hideturtle()#隐藏画笔
接着我会将程序分成调用区和定义区(定义区在调用区上面)
3.设置函数“taibi”(为了方便抬笔,确定位置,再落笔)
def taibi(x,y):#def后跟函数名,括号内为变量
up()#抬笔
goto(x,y)#使画笔移动到横坐标为x,纵坐标为y的位置
down()#落笔
由于程序重复用到这几个模块,所以我将它们整合为一个函数,方便调用及输出
(4.)此函数可设可不设,本人懒(bushi),想少敲几个字母(设置笔的颜色)
def yanse(a):
pencolor(a)
#或用时直接就pencolor(),就不需要设置函数了
4.定义函数来画年兽的角
def jiao(f,g,h,j):
fillcolor('coral4')#这个颜色在https://tool.oschina.net/commons?type=3有详细介绍
begin_fill()
right(95)
#角的第一条线
for i in range(1,131):
fd(1)
right(f)
left(25)#调整画笔的角度
#角的第二条线
for i in range(1,46):
fd(1)
left(g)
g += 0.1
#角的第三条线
for i in range(1,111):
fd(1)
right(h)
#用if条件判断语句去在适当的时候调整画笔
if i > 89:
h += 0.03
j += 1
end_fill()
#调用如下
yanse('coral4')
taibi(-200,200)
jiao(-0.6,1.2,0.4,0)
5.画年兽的头发,依然定义函数
def dingfa(k,l,m,c1,d1,e1,f1,h1,i1,j1,k1,a2,b2,a1,b1):
fd(10)
left(60)
fd(55)
for i in range(1,99):
fd(l)
right(k)
k += 0.8
if i > 10 and i <80:
k = 0.8
l = 0.5
elif i>79:
k = 0.5
l = 1.1
right(120)
for i in range(1,76):
fd(1)
right(-0.6)
left(25)
for i in range(1,61):
fd(1)
left(m)
m += 0.06
right(40)
for i in range(1,46):
fd(1)
right(0.3)
right(120)
left(50)
for i in range(1,251):
fd(c1)
right(d1)
if d1 > 0.8:
d1 -= 0.5
if i > 30 and i<161:
d1 = 0.5
if d1 > -0.6:
d1 -= 0.3
elif i > 160:
d1 = -0.7
c1 = 0.7
right(125)
for i in range(1,121):
fd(e1)
right(f1)
if i > 109:
f1 += 0.01
left(170)
for i in range(1,66):
fd(h1)
left(i1)
right(160)
for i in range(1,76):
fd(j1)
right(k1)
if i > 46:
j1 += 0.03
right(80)
for i in range(1,156):
if i < 21:
fd(a2)
left(b2)
elif i > 20 and i < 51:
fd(a2 - 0.2)
left(b2 + 0.8)
elif i > 50 and i < 61:
fd(a2 - 0.2)
left(b2 + 0.9)
elif i > 60 and i < 105:
fd(a2 + 0.9)
right(b2 - 0.2)
elif i > 104:
fd(a2 + 0.5)
right(b2 + 0.31)
right(130)
for i in range(1,36):
fd(a2)
left(b2 - 0.15)
right(45)
for i in range(1,101):
if i < 41:
fd(a2)
left(b2 - 0.05)
elif i > 40:
fd(a2 + 0.2)
if i == 41:
left(30)
else:
left(b2 - 0.3)
left(155)
for i in range(1,201):
if i < 50:
fd(a2)
right(b2 - 0.15)
elif i > 49 and i < 90:
fd(a2 + 0.4)
right(b2 + 0.8)
elif i >89 and i < 106:
fd(a2 + 0.5)
left(b2 + 0.8)
goto(-87,87)
for i in range(1,41):
if i == 1:
right(20)
fd(0.9)
right(b1 - 0.7)
if i > 15 and i < 26:
right(0.2)
elif i > 25:
left(0.4)
left(30)
for i in range(1,16):
fd(a1)
right(b1)
#调用如下
taibi(-130,68)
yanse('chocolate1')
fillcolor('darkorange')
begin_fill()
dingfa(0.5,1.2,1.2,0.8,4,0.6,0.3,0.8,0.3,0.6,0.2,0.5,0.4,1,0.8)
end_fill()
6. 我们定义眉毛函数与眼睛,由于我画的黑眼珠是用dot画的,需要用眉毛来掩盖住一部分,所以我们先画眼睛再画眉毛(眉毛和眼睛各定义两个函数作区分)
def meimao1(e2):
left(160)
for i in range(1,6):
fd(e2)
left(90)
e2 += 4#利用递增或递减来改变形状
right(58)
for i in range(1,11):
if i < 11:
fd(4)
right(19)
for i in range(1,91):
fd(0.6)
left(0.3)
left(40)
for i in range(1,71):
fd(0.5)
right(0.4 - 0.15)
left(175)
for i in range(1,76):
if i < 56:
fd(1)
right(1)
else:
fd(0.5 + 0.5)
left(0.4 + 0.8)
for i in range(47):
fd(1)
if i == 46:
left(0.5)
else:
left(0.8)
def meimao2(f2,g2,h2,i2):
right(170)
for i in range(1,6):
fd(f2)
right(90)
f2 += 4
f2 = 5
left(70)
for i in range(1,21):
if i > 10:
if i == 11:
left(17)
else:
if i > 16:
left(0.2)
else:
fd(f2 - 4)
left(g2 + 0.4)
else:
fd(f2 - 3.5)
for i in range(1,33):
if i < 11:
fd(f2 - 3)
right(g2 + 0.2)
g2 += 0.3
if i < 16 and i > 10:
fd(f2 - 3)
right(g2 + 0.3)
g2 += 0.65
elif i > 15:
fd(f2 - 1.5)
right(g2 + 0.4)
g2 -= 0.5
right(175)
for i in range(1,80):
fd(i2)
left(h2)
if i > 69:
if i == 70:
h2 = 0.5
i2 = 1.5
else:
h2 += 0.32
else:
h2 = 0.8
i2 = 0.5
for i in range(1,26):
if i < 11:
fd(f2 - 3.5)
else:
if i == 1:
left(17)
g2 = 0.4
else:
if i > 24:
left(0.2)
else:
fd(f2 - 4)
left(g2 + 0.4)
for i in range(1,21):
fd(1)
right(1)
def yanjing1(j2,k2):
right(20)
for i in range(1,16):
fd(0.7)
right(0.8)
for i in range(1,51):
if i < 21:
j2 += 1
fd(0.1)
right(j2)
elif i > 20 and i < 38:
if j2 > 0.4:
j2 -= 1.6
fd(k2 - 9)
right(j2)
k2 += 0.8
left(100)
fd(21)
dot(20)
fd(20)
def yanjing2(l1,l2,a3):
left(138)
for i in range(1,16):
fd(0.6)
left(1.2)
for i in range(1,36):
if i < 21:
fd(0.9)
left(l1)
l1 += 0.2
elif i > 20:
fd(l2 + 0.1)
left(a3 - 0.6)
l2 += 0.18
a3 += 0.19
left(140)
fd(29)
dot(25)
fd(28)
#调用如下
taibi(-80,26)
yanse('black')
fillcolor('white')
begin_fill()
yanjing2(0.5,1,1)
end_fill()
taibi(-87,39)
yanse('goldenrod1')
fillcolor('darkorange')
begin_fill()
meimao1(5)
end_fill()
taibi(-160,27)
yanse('black')
fillcolor('white')
begin_fill()
yanjing1(1,1)
end_fill()
taibi(-155,39)
yanse('goldenrod1')
fillcolor('darkorange')
begin_fill()
meimao2(5,0.4,0.5,1.2)
end_fill()
7.接着我们再画年兽两边的鬓发(我在这叫它侧发)
def cefa1(b3):
right(17)
fd(30)
left(60)
fd(10)
left(120)
fd(12)
for i in range(1,26):
fd(0.9)
left(b3)
b3 += 0.08
def cefa2(c3):
for i in range(1,6):
right(90)
fd(c3)
c3 += 8
fd(20)
right(12)
for i in range(1,231):
if i > 135:
if i > 170:
fd(1)
right(0.2)
else:
fd(0.5)
right(0.4)
elif i > 105 and i < 136:
fd(0.3)
right(1.2)
elif i > 95 and i < 106:
fd(0.3)
right(1.3)
elif i > 50 and i < 95:
fd(1.4)
left(0.2)
elif i < 51:
fd(1)
left(0.71)
right(140)
for i in range(1,146):
if i > 105 and i < 146:
fd(0.3)
right(1.2)
elif i > 95 and i < 106:
fd(0.3)
right(1.3)
elif i > 50 and i < 95:
fd(1.4)
left(0.2)
elif i < 51:
fd(1)
left(0.71)
left(180)
for i in range(1,41):
fd(0.3)
left(1.2)
right(45)
for i in range(1,21):
fd(1)
right(0.2)
right(125)
for i in range(1,31):
fd(1)
right(0.68)
for i in range(1,46):
fd(1)
right(0.3)
for i in range(1,81):
fd(0.5)
right(0.4)
for i in range(1,108):
fd(0.47)
right(0.4)
#输出如下
taibi(-207,49)
yanse('goldenrod1')
fillcolor('darkorange')
begin_fill()
cefa1(1)
end_fill()
taibi(-38,22)
yanse('goldenrod1')
fillcolor('darkorange')
begin_fill()
cefa2(6.5)
end_fill()
8.画下巴鼻子和嘴巴(都定义在一个函数中)
def xbzbbz(d3,e3):
left(78)
for i in range(1,51):
fd(0.9)
right(0.5)
for i in range(1,35):
fd(1)
right(0.4)
for i in range(1,19):
fd(d3)
right(e3)
e3 += 0.4
d3 += 0.1
taibi(-197,9)
right(170)
d3 = 0.4
e3 = 1
for i in range(1,83):
if i > 45:
d3 = 0.2
e3 = 0.8
fd(e3)
left(d3)
else:
fd(e3)
left(d3)
d3 += 0.05
e3 += 0.02
taibi(-126,-28)
left(48)
yanse('#51150b')
fillcolor('#51150b')
begin_fill()
for i in range(1,46):
fd(0.8)
left(0.8)
left(90)
for i in range(1,76):
if i < 7:
fd(0.7)
left(1)
elif i < 69 and i > 6:
fd(0.5)
left(0.2)
else:
fd(0.7)
left(1)
left(83)
for i in range(1,46):
fd(0.8)
left(0.8)
end_fill()
taibi(-140,-42)
yanse('chocolate1')
right(4)
fd(12)
left(48)
fd(30)
left(58)
fd(13)
#调用如下
taibi(-38,-2)
yanse('chocolate1')
xbzbbz(0.9,2.1)
taibi(-130,-64)
9.画脖子旁的鬓发(简称领发)
def lingfa1(f3,g3,h3):
for i in range(1,5):
left(90)
fd(f3)
f3 += 3
left(78)
fd(16)
left(50)
fd(5)
right(60)
fd(11)
left(55)
for i in range(1,26):
if g3 < 1.63:
fd(h3)
right(1.3)
else:
fd(h3)
right(g3)
g3 -= 0.049
h3 -= 0.025
left(110)
for i in range(1,84):
fd(0.79)
left(1.1)
for i in range(1,71):
fd(0.5)
left(1)
def lingfa2(i3):
for i in range(1,5):
fd(i3)
i3 += 3
right(90)
left(10)
fd(9)
right(45)
fd(12)
left(58)
fd(12)
right(53)
for i in range(1,90):
fd(0.9)
left(0.5)
right(9.8)
fd(10)
right(76)
for i in range(1,98):
fd(0.47)
left(0.4)
for i in range(1,71):
fd(0.5)
left(0.4)
right(40)
for i in range(1,31):
fd(0.7)
right(0.5)
right(140)
for i in range(1,131):
if i > 105:
fd(0.5)
right(1.2)
elif i > 50 and i < 106:
fd(0.7)
right(1)
elif i < 51:
fd(0.85)
left(0.55)
left(165)
for i in range(1,31):
fd(0.7)
right(0.5)
right(145)
for i in range(1,89):
fd(0.65)
left(1.19)
for i in range(1,91):
fd(0.85)
right(1.45)
#调用如下
taibi(-38,-2)
yanse('chocolate1')
xbzbbz(0.9,2.1)
10.画铃铛(再次使用dot函数去画圆)
def lingdang():
dot(40,'darkorange1')#dot(直径,颜色(默认黑色))
taibi(-133,-87)
right(110)
for i in range(1,48):
fd(0.7)
right(0.52)
taibi(-133,-95)
left(25)
for i in range(1,51):
fd(0.7)
right(0.52)
taibi(-113,-102)
dot(9,'lightsalmon4')
yanse('lightsalmon4')
right(88)
fd(12)
#调用如下
taibi(-115,-94)
yanse('firebrick2')
lingdang()
11.倒数第二步就是下半身了
def xiabanshen():
fd(80)
left(72)
for i in range(1,51):
fd(1)
left(1.1)
taibi(-90,-89)
right(132)
for i in range(1,86):
fd(1)
left(0.25)
left(75)
for i in range(1,48):
fd(1.1)
left(0.7)
left(65)
fd(63)
taibi(-45,-135)
right(80)
fd(50)
taibi(19,-90)
right(142)
for i in range(1,51):
fd(1)
left(1)
right(15)
fd(20)
left(88)
for i in range(1,61):
fd(0.9)
left(0.6)
left(80)
fd(12)
left(70)
fd(2)
right(100)
fd(2)
for i in range(1,156):
if i < 41:
fd(0.99)
right(0.4)
elif i > 40 and i < 100:
if i == 41:
left(25)
else:
fd(1)
left(1)
elif i > 100:
fd(0.7)
left(0.3)
#调用如下
taibi(-136,-87)
yanse('chocolate1')
xiabanshen()
12.最后,就只剩尾巴咯
def weiba(l3,l4):
right(130)
for i in range(1,211):
if i < 101:
if i < 20:
fd(0.8)
right(1.1)
else:
fd(1)
left(0.78)
elif i < 111 and i > 100:
if i == 101:
left(90)
fd(1)
elif i == 110:
fd(1)
left(90)
else:
fd(1)
else:
if i > 190:
fd(0.72)
left(0.9)
else:
fd(1)
right(0.9)
taibi(130,0)
left(146)
begin_fill()
for i in range(1,6):
fd(l3)
left(90)
l3 += 3
right(26)
for i in range(1,201):
if i < 81:
fd(0.8)
left(1)
elif i < 101 and i > 80:
if i == 81:
right(32)
fd(0.5)
elif i == 100:
left(66)
else:
fd(0.5)
elif i < 121 and i > 100:
if i == 120:
fd(0.5)
right(32)
elif i == 101:
left(66)
else:
fd(0.5)
else:
fd(0.8)
left(1)
right(26)
for i in range(1,6):
left(90)
l4 -= 3
fd(l4)
end_fill()
#调用如下
taibi(55,-65)
yanse('goldenrod1')
weiba(5,20)
最后的最后,别忘了加上done()噢,否则程序一运行完就关闭咯
源代码如下:
from turtle import *
title('年兽来咯~~~')
screensize(1000,900,'red')
speed(0)
pensize(5)
def taibi(x,y):
up()
goto(x,y)
down()
def yanse(a):
pencolor(a)
def jiao(f,g,h,j):
fillcolor('coral4')
begin_fill()
right(95)
for i in range(1,131):
fd(1)
right(f)
left(25)
for i in range(1,46):
fd(1)
left(g)
g += 0.1
for i in range(1,111):
fd(1)
right(h)
if i > 89:
h += 0.03
j += 1
end_fill()
def dingfa(k,l,m,c1,d1,e1,f1,h1,i1,j1,k1,a2,b2,a1,b1):
fd(10)
left(60)
fd(55)
for i in range(1,99):
fd(l)
right(k)
k += 0.8
if i > 10 and i <80:
k = 0.8
l = 0.5
elif i>79:
k = 0.5
l = 1.1
right(120)
for i in range(1,76):
fd(1)
right(-0.6)
left(25)
for i in range(1,61):
fd(1)
left(m)
m += 0.06
right(40)
for i in range(1,46):
fd(1)
right(0.3)
right(120)
left(50)
for i in range(1,251):
fd(c1)
right(d1)
if d1 > 0.8:
d1 -= 0.5
if i > 30 and i<161:
d1 = 0.5
if d1 > -0.6:
d1 -= 0.3
elif i > 160:
d1 = -0.7
c1 = 0.7
right(125)
for i in range(1,121):
fd(e1)
right(f1)
if i > 109:
f1 += 0.01
left(170)
for i in range(1,66):
fd(h1)
left(i1)
right(160)
for i in range(1,76):
fd(j1)
right(k1)
if i > 46:
j1 += 0.03
right(80)
for i in range(1,156):
if i < 21:
fd(a2)
left(b2)
elif i > 20 and i < 51:
fd(a2 - 0.2)
left(b2 + 0.8)
elif i > 50 and i < 61:
fd(a2 - 0.2)
left(b2 + 0.9)
elif i > 60 and i < 105:
fd(a2 + 0.9)
right(b2 - 0.2)
elif i > 104:
fd(a2 + 0.5)
right(b2 + 0.31)
right(130)
for i in range(1,36):
fd(a2)
left(b2 - 0.15)
right(45)
for i in range(1,101):
if i < 41:
fd(a2)
left(b2 - 0.05)
elif i > 40:
fd(a2 + 0.2)
if i == 41:
left(30)
else:
left(b2 - 0.3)
left(155)
for i in range(1,201):
if i < 50:
fd(a2)
right(b2 - 0.15)
elif i > 49 and i < 90:
fd(a2 + 0.4)
right(b2 + 0.8)
elif i >89 and i < 106:
fd(a2 + 0.5)
left(b2 + 0.8)
goto(-87,87)
for i in range(1,41):
if i == 1:
right(20)
fd(0.9)
right(b1 - 0.7)
if i > 15 and i < 26:
right(0.2)
elif i > 25:
left(0.4)
left(30)
for i in range(1,16):
fd(a1)
right(b1)
def meimao1(e2):
left(160)
for i in range(1,6):
fd(e2)
left(90)
e2 += 4
right(58)
for i in range(1,11):
if i < 11:
fd(4)
right(19)
for i in range(1,91):
fd(0.6)
left(0.3)
left(40)
for i in range(1,71):
fd(0.5)
right(0.4 - 0.15)
left(175)
for i in range(1,76):
if i < 56:
fd(1)
right(1)
else:
fd(0.5 + 0.5)
left(0.4 + 0.8)
for i in range(47):
fd(1)
if i == 46:
left(0.5)
else:
left(0.8)
def meimao2(f2,g2,h2,i2):
right(170)
for i in range(1,6):
fd(f2)
right(90)
f2 += 4
f2 = 5
left(70)
for i in range(1,21):
if i > 10:
if i == 11:
left(17)
else:
if i > 16:
left(0.2)
else:
fd(f2 - 4)
left(g2 + 0.4)
else:
fd(f2 - 3.5)
for i in range(1,33):
if i < 11:
fd(f2 - 3)
right(g2 + 0.2)
g2 += 0.3
if i < 16 and i > 10:
fd(f2 - 3)
right(g2 + 0.3)
g2 += 0.65
elif i > 15:
fd(f2 - 1.5)
right(g2 + 0.4)
g2 -= 0.5
right(175)
for i in range(1,80):
fd(i2)
left(h2)
if i > 69:
if i == 70:
h2 = 0.5
i2 = 1.5
else:
h2 += 0.32
else:
h2 = 0.8
i2 = 0.5
for i in range(1,26):
if i < 11:
fd(f2 - 3.5)
else:
if i == 1:
left(17)
g2 = 0.4
else:
if i > 24:
left(0.2)
else:
fd(f2 - 4)
left(g2 + 0.4)
for i in range(1,21):
fd(1)
right(1)
def yanjing1(j2,k2):
right(20)
for i in range(1,16):
fd(0.7)
right(0.8)
for i in range(1,51):
if i < 21:
j2 += 1
fd(0.1)
right(j2)
elif i > 20 and i < 38:
if j2 > 0.4:
j2 -= 1.6
fd(k2 - 9)
right(j2)
k2 += 0.8
left(100)
fd(21)
dot(20)
fd(20)
def yanjing2(l1,l2,a3):
left(138)
for i in range(1,16):
fd(0.6)
left(1.2)
for i in range(1,36):
if i < 21:
fd(0.9)
left(l1)
l1 += 0.2
elif i > 20:
fd(l2 + 0.1)
left(a3 - 0.6)
l2 += 0.18
a3 += 0.19
left(140)
fd(29)
dot(25)
fd(28)
def cefa1(b3):
right(17)
fd(30)
left(60)
fd(10)
left(120)
fd(12)
for i in range(1,26):
fd(0.9)
left(b3)
b3 += 0.08
def cefa2(c3):
for i in range(1,6):
right(90)
fd(c3)
c3 += 8
fd(20)
right(12)
for i in range(1,231):
if i > 135:
if i > 170:
fd(1)
right(0.2)
else:
fd(0.5)
right(0.4)
elif i > 105 and i < 136:
fd(0.3)
right(1.2)
elif i > 95 and i < 106:
fd(0.3)
right(1.3)
elif i > 50 and i < 95:
fd(1.4)
left(0.2)
elif i < 51:
fd(1)
left(0.71)
right(140)
for i in range(1,146):
if i > 105 and i < 146:
fd(0.3)
right(1.2)
elif i > 95 and i < 106:
fd(0.3)
right(1.3)
elif i > 50 and i < 95:
fd(1.4)
left(0.2)
elif i < 51:
fd(1)
left(0.71)
left(180)
for i in range(1,41):
fd(0.3)
left(1.2)
right(45)
for i in range(1,21):
fd(1)
right(0.2)
right(125)
for i in range(1,31):
fd(1)
right(0.68)
for i in range(1,46):
fd(1)
right(0.3)
for i in range(1,81):
fd(0.5)
right(0.4)
for i in range(1,108):
fd(0.47)
right(0.4)
def xbzbbz(d3,e3):
left(78)
for i in range(1,51):
fd(0.9)
right(0.5)
for i in range(1,35):
fd(1)
right(0.4)
for i in range(1,19):
fd(d3)
right(e3)
e3 += 0.4
d3 += 0.1
taibi(-197,9)
right(170)
d3 = 0.4
e3 = 1
for i in range(1,83):
if i > 45:
d3 = 0.2
e3 = 0.8
fd(e3)
left(d3)
else:
fd(e3)
left(d3)
d3 += 0.05
e3 += 0.02
taibi(-126,-28)
left(48)
yanse('#51150b')
fillcolor('#51150b')
begin_fill()
for i in range(1,46):
fd(0.8)
left(0.8)
left(90)
for i in range(1,76):
if i < 7:
fd(0.7)
left(1)
elif i < 69 and i > 6:
fd(0.5)
left(0.2)
else:
fd(0.7)
left(1)
left(83)
for i in range(1,46):
fd(0.8)
left(0.8)
end_fill()
taibi(-140,-42)
yanse('chocolate1')
right(4)
fd(12)
left(48)
fd(30)
left(58)
fd(13)
def lingfa1(f3,g3,h3):
for i in range(1,5):
left(90)
fd(f3)
f3 += 3
left(78)
fd(16)
left(50)
fd(5)
right(60)
fd(11)
left(55)
for i in range(1,26):
if g3 < 1.63:
fd(h3)
right(1.3)
else:
fd(h3)
right(g3)
g3 -= 0.049
h3 -= 0.025
left(110)
for i in range(1,84):
fd(0.79)
left(1.1)
for i in range(1,71):
fd(0.5)
left(1)
def lingfa2(i3):
for i in range(1,5):
fd(i3)
i3 += 3
right(90)
left(10)
fd(9)
right(45)
fd(12)
left(58)
fd(12)
right(53)
for i in range(1,90):
fd(0.9)
left(0.5)
right(9.8)
fd(10)
right(76)
for i in range(1,98):
fd(0.47)
left(0.4)
for i in range(1,71):
fd(0.5)
left(0.4)
right(40)
for i in range(1,31):
fd(0.7)
right(0.5)
right(140)
for i in range(1,131):
if i > 105:
fd(0.5)
right(1.2)
elif i > 50 and i < 106:
fd(0.7)
right(1)
elif i < 51:
fd(0.85)
left(0.55)
left(165)
for i in range(1,31):
fd(0.7)
right(0.5)
right(145)
for i in range(1,89):
fd(0.65)
left(1.19999999999999999999999999999)
for i in range(1,91):
fd(0.85)
right(1.45)
def lingdang():
dot(40,'darkorange1')
taibi(-133,-87)
right(110)
for i in range(1,48):
fd(0.7)
right(0.52)
taibi(-133,-95)
left(25)
for i in range(1,51):
fd(0.7)
right(0.52)
taibi(-113,-102)
dot(9,'lightsalmon4')
yanse('lightsalmon4')
right(88)
fd(12)
def xiabanshen():
fd(80)
left(72)
for i in range(1,51):
fd(1)
left(1.1)
taibi(-90,-89)
right(132)
for i in range(1,86):
fd(1)
left(0.25)
left(75)
for i in range(1,48):
fd(1.1)
left(0.7)
left(65)
fd(63)
taibi(-45,-135)
right(80)
fd(50)
taibi(19,-90)
right(142)
for i in range(1,51):
fd(1)
left(1)
right(15)
fd(20)
left(88)
for i in range(1,61):
fd(0.9)
left(0.6)
left(80)
fd(12)
left(70)
fd(2)
right(100)
fd(2)
for i in range(1,156):
if i < 41:
fd(0.99)
right(0.4)
elif i > 40 and i < 100:
if i == 41:
left(25)
else:
fd(1)
left(1)
elif i > 100:
fd(0.7)
left(0.3)
def weiba(l3,l4):
right(130)
for i in range(1,211):
if i < 101:
if i < 20:
fd(0.8)
right(1.1)
else:
fd(1)
left(0.78)
elif i < 111 and i > 100:
if i == 101:
left(90)
fd(1)
elif i == 110:
fd(1)
left(90)
else:
fd(1)
else:
if i > 190:
fd(0.72)
left(0.9)
else:
fd(1)
right(0.9)
taibi(130,0)
left(146)
begin_fill()
for i in range(1,6):
fd(l3)
left(90)
l3 += 3
right(26)
for i in range(1,201):
if i < 81:
fd(0.8)
left(1)
elif i < 101 and i > 80:
if i == 81:
right(32)
fd(0.5)
elif i == 100:
left(66)
else:
fd(0.5)
elif i < 121 and i > 100:
if i == 120:
fd(0.5)
right(32)
elif i == 101:
left(66)
else:
fd(0.5)
else:
fd(0.8)
left(1)
right(26)
for i in range(1,6):
left(90)
l4 -= 3
fd(l4)
end_fill()
hideturtle()
yanse('coral4')
taibi(-200,200)
jiao(-0.6,1.2,0.4,0)
taibi(-130,68)
yanse('chocolate1')
fillcolor('darkorange')
begin_fill()
dingfa(0.5,1.2,1.2,0.8,4,0.6,0.3,0.8,0.3,0.6,0.2,0.5,0.4,1,0.8)
end_fill()
taibi(-80,26)
yanse('black')
fillcolor('white')
begin_fill()
yanjing2(0.5,1,1)
end_fill()
taibi(-87,39)
yanse('goldenrod1')
fillcolor('darkorange')
begin_fill()
meimao1(5)
end_fill()
taibi(-160,27)
yanse('black')
fillcolor('white')
begin_fill()
yanjing1(1,1)
end_fill()
taibi(-155,39)
yanse('goldenrod1')
fillcolor('darkorange')
begin_fill()
meimao2(5,0.4,0.5,1.2)
end_fill()
taibi(-207,49)
yanse('goldenrod1')
fillcolor('darkorange')
begin_fill()
cefa1(1)
end_fill()
taibi(-38,22)
yanse('goldenrod1')
fillcolor('darkorange')
begin_fill()
cefa2(6.5)
end_fill()
taibi(-38,-2)
yanse('chocolate1')
xbzbbz(0.9,2.1)
taibi(-130,-64)
yanse('goldenrod1')
fillcolor('darkorange')
begin_fill()
lingfa1(5,2.6,1.9)
end_fill()
taibi(-108,-64)
fillcolor('darkorange')
begin_fill()
lingfa2(5)
end_fill()
taibi(-115,-94)
yanse('firebrick2')
lingdang()
taibi(-136,-87)
yanse('chocolate1')
xiabanshen()
taibi(55,-65)
yanse('goldenrod1')
weiba(5,20)
done()
ps:本人现在在读初二,有文字表述错误纯属正常,还望各位多多谅解,多多包容噢(有错就指出,不要客气)