用Python给娃送上一份猪年春节礼物。文末源码!

随着农历猪年的到来,Pig的卡通形象以火爆的热度迅速成为大家心中的新一任萌宠,尤其是深受小朋友喜欢的小猪佩奇,作为一枚关心热点又家有小娃的非典型程序猿小编,也来蹭蹭热点,让我们用Python来送给娃一幅小猪佩奇的画作。

啥都不说,直接上图:

这就是Python画小猪佩奇的动态过程,是不是感觉画的挺好的?那是怎么实现的呢?这就得益于Python强大的库功能,本文图片用的就是Python众多库中的绘制图形库turtle画的。导入库的方法如下:

import turtle as t

通过上面的动图我们发现小猪佩奇是不是像一支画笔一样在画?那是因为我们把小猪佩奇的卡通形象分作鼻子、头部轮廓、眼睛、耳朵、鳃部、嘴巴、身体、手、脚等各个部位,然后把各个部位按顺序来画的,下面我们以鼻子为例来具体看一看。先看鼻子的形状:

要画成这个形状,我们需要做以下工作:

1、确定画笔的起始位置

2、确定画笔的颜色

3、画一个鼻子的外形,也就是椭圆

4、确定椭圆的填充颜色

5、画左右两个鼻孔

首先我们完成画笔的初始化。代码如下:

 
def  init():
     t.pensize(4)  # 设置画笔的大小
     t.colormode(255)  # 设置GBK颜色范围为0-255
     t.color((255, 155, 192),  "pink")  #  设置画笔颜色和填充颜色(pink)
     t.setup(840, 500)  # 设置画布的大小为840*500
     t.speed(10)  # 设置画笔速度为10
 

然后按照步骤开始编码画鼻子:

def  nose():
      t.pu()  # 提笔
      t.goto(-100,100)  # 画笔前往坐标(-100,100)
      t.pd()  # 下笔
      t.seth(-30)  # 设置图形倾斜角度为-30°
      t.begin_fill()  # 外形填充的开始标志
      a = 0.4
      for i in range(120):
           if 0 <= i < 30 or 60  <= i < 90:
               a = a + 0.08
               t.lt(3)  # 向左转3度
               t.fd(a)  # 向前走a的步长
           else:
               a = a - 0.08
               t.lt(3)
               t.fd(a)
      t.end_fill()  # 依据轮廓填充
       #鼻孔
      t.pu()  # 提笔
      t.seth(90)  # 笔的角度为90度
      t.fd(25)  # 向前移动25
      t.seth(0)  # 转换画笔的角度为0
      t.fd(10)
      t.pd()
      t.pencolor(255, 155, 192)  # 设置画笔颜色
      t.seth(10)
      t.begin_fill()
      t.circle(5)  # 画一个半径为5的圆
      t.color(160, 82, 45)  # 设置画笔和填充颜色
      t.end_fill()
      t.pu()
      t.seth(0)
      t.fd(20)
      t.pd()
      t.pencolor(255, 155, 192)
      t.seth(10)
      t.begin_fill()
      t.circle(5)
      t.color(160, 82, 45)
      t.end_fill() 

到这里鼻子就画完了,是不是感觉其实挺简单的呢?跃跃欲试的你是不是也想自己动手了?come on!自己动手用同样的方法完成身体的其他部位吧。

总结一下就是要确定每个部位的准确坐标,然后多点耐心调试,再加一点点的美术细胞。建议和孩子一起完成噢,相信你可以和孩子有一个属于你们的欢愉时光的。最后上一张完整的佩奇图。看看你是不是可以和我画的一样!

    

如果需要完整的参考源码请长按识别下方二维码关注公众号,回复“佩奇”,即可获取。

 

猜你喜欢

转载自blog.csdn.net/wgypaul/article/details/86640777