之前一直被佩奇的预告片刷屏,就想着用python中的turtle模块来自己绘制一个海报目前完成了一个头,代码如下;之后会更新整幅图
from turtle import *
def eyes(x,y):#眼睛
penup()#提起笔
goto(x,y)#定位
setheading(90)
forward(25)
setheading(0)#将乌龟的方向设置为to_angle/为数字(0-东、90-北、180-西、270-南)
forward(10)#向前走10的步长
pendown()#落笔,开始画
pencolor(255,155,192)#画笔颜色
setheading(15)
begin_fill()
circle(10)
setheading(80)
forward(9)
color(255,255,255)#返回或设置pencolor和fillcolor
begin_fill()
circle(6)
color(0,0,0)
end_fill()
def ears(x,y): #耳朵
penup()#提起笔
goto(x,y)#定位
color((255,155,192))
pendown()#落笔,开始画
setheading(-20)#将乌龟的方向设置为to_angle/为数字(0-东、90-北、180-西、270-南)
begin_fill()#准备开始填充图形
a=0.4
for i in range (15,120):
if 15<=i<45 or 75<=i<110:
a=a+0.05
left(3)#向左转3度
forward(a)#向前走a的步长
else:
a=a-0.05
left(3)
forward(a)
end_fill()#填充完成
def nose(x,y): #鼻子
penup()#提起笔
goto(x,y)#定位
pendown()#落笔,开始画
setheading(-30)#将乌龟的方向设置为to_angle/为数字(0-东、90-北、180-西、270-南)
begin_fill()#准备开始填充图形
a=0.4
for i in range (120):
if 0<=i<30 or 60<=i<90:
a=a+0.08
left(3)#向左转3度
forward(a)#向前走a的步长
else:
a=a-0.08
left(3)
forward(a)
end_fill()#填充完成
penup()
setheading(90)
forward(25)
setheading(0)
forward(10)
pendown()
pencolor(255,155,192)#画笔颜色
setheading(10)
begin_fill()
circle(5)
color(160,82,45)#返回或设置pencolor和fillcolor
end_fill()
penup()
setheading(0)
forward(20)
pendown()
pencolor(255,155,192)
setheading(10)
begin_fill()
circle(5)
color(160,82,45)
end_fill()
def head(x,y):#头
color((255,155,192),"pink")
penup()
goto(x,y)
setheading(0)
pendown()
begin_fill()
setheading(180)
circle(300,-30)
circle(100,-60)
circle(80,-100)
circle(150,-20)
circle(60,-95)
setheading(161)
circle(-300,15)
penup()
goto(-100,100)
pendown()
setheading(-30)
a=0.4
for i in range(60):
if 0<=i<30 or 60<=i<90:
a=a+0.08
lt(3)#向左转3度
fd(a)#向前走a的步长
else:
a=a-0.08
lt(3)
fd(a)
end_fill()
def cheek(x,y):#腮
color((255,155,192))
penup()
goto(x,y)
pendown()
setheading(0)
begin_fill()
circle(30)
end_fill()
def mouth(x,y):#嘴
color(239,69,19)
penup()
goto(x,y)
pendown()
setheading(-80)
circle(30,40)
circle(40,80)
def setting():#参数设置
pensize(4)
hideturtle()#使乌龟无形(隐藏)
colormode(255)#将其设置为1.0或255.随后 颜色三元组的r,g,b值必须在0 .. cmode范围内
color((255,155,192),"pink")
#setup(1024,740)
setup(780,500)
#speed(10) #设置绘图速度
Turtle().screen.delay(0)
def main():
setting()#画布、画笔设置
nose(-100,100)#鼻子
ears(42,140)#一只耳朵
ears(102,110)#另一只耳朵
head(-69,167)#头
eyes(0,85)#一只眼睛
eyes(45,70)#另一只眼睛
cheek(80,10)#腮
mouth(-20,30)#嘴
done()
main()
转载自原文链接, 如需删除请联系管理员。
原文链接:使用python中turtle绘制一个小猪佩奇的头像,转载请注明来源!