查看原文
其他

追忆童年,教你用Python画出儿时卡通人物

The following article is from 凹凸数据 Author 张同学

作者 | 张同学
来源 | 凹凸数据
大家好,我是张同学。
又到一年一度的国际儿童节,作为逢节必过的程序猿,怎么可以放过这个学习技能的机会呢?
于是,今天我们来学习 Python 的 Turtle 库绘制童年的卡通人物,一起做回年轻的那个少年。
 
Turtle图形库简介

Turtle 库,又称海龟库,是 Python 语言中一个很流行的绘制图像的函数库。
大家可以想象一个小乌龟,在一个横轴为x、纵轴为y的坐标系原点,(0,0)位置开始,它根据一组函数指令的控制,在这个平面坐标系中移动,从而在它爬行的路径上绘制了图形。
Turtle 库一般 Python 环境会自带,如果没有这个库查询一下安装方法。

常用函数

1、画笔控制函数


  • penup():抬起画笔;
  • pendown():落下画笔;
  • pensize(width):画笔宽度;
  • pencolor(color):画笔颜色;color为颜色字符串或者rgb值


2、运动控制函数


  • forward(d)/fd(d):直行d个像素;
  • circle(r, extent = None):绘制半径为r,角度为extent的弧形,圆心默认在海龟左侧距离r的位置;


3、方向控制函数


  • setheading(angle)/seth(angle):改变前进方向;
  • left(angle):海龟左转;
  • right(angle):海龟右转;

代码演示

下面用海龟库完成小黄人的绘制,下面是部分源码,完整源码以及其余的卡通图案绘制源码见文末。
import turtle as t

t.pensize(4)
t.speed(10)

# =======头======
def head():
    t.penup()
    t.fillcolor("#FFEE26")
    t.goto(-130, 10)
    t.pendown()
    t.begin_fill()
    t.seth(81)
    t.fd(90)
    t.seth(100)
    t.circle(-500, 3)
    t.circle(-100, 10)
    t.circle(-200, 25)
    t.circle(-110, 20)
    t.circle(-140, 30)
    t.circle(-180, 30)
    t.circle(-200, 20)
    t.circle(-140, 10)
    t.circle(-160, 50)
    t.seth(85)
    t.fd(-148)
    t.seth(-112)
    t.circle(-250, 14)
    t.fd(200)
    t.right(80)
    t.fd(190)
    t.seth(110)
    t.circle(-200, 7)
    t.circle(-130, 30)
    t.end_fill()
绘制过程:
6个卡通图案绘制源码(网页打开直接下载):
https://alltodata.cowtransfer.com/s/2b943c8a803e45
注:文中卡通图案绘制参考了部分教程。

【END】
6月2日20:00,CSDN 创始人&董事长、极客帮创投创始合伙人蒋涛携手全球顶级开源基金会主席、董事,聚焦中国开源现状,直面开发者在开源技术、商业上的难题,你绝不可错过的开源巅峰对谈!立即免费围观

更多精彩推荐


我只是追个直播,结果被拉进大咖们的群面对面群聊……

微信公众号关闭iOS端虚拟支付业务;苹果「Apple 登录」存安全漏洞;谷歌推迟发布Android 11 Beta| 极客头条

可怕!CPU 竟成了黑客的帮凶!

如何用NLP辅助投资分析?三大海外机构落地案例详解

这 10 个云计算错误,会让你的业务一蹶不振!

好扑科技结合区块链行业发展趋势,重磅推出“好扑区块链合伙人”计划

你点的每个“在看”,我都认真当成了喜欢

    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存