作者 | 张同学
来源 | 凹凸数据
大家好,我是张同学。
又到一年一度的国际儿童节,作为逢节必过的程序猿,怎么可以放过这个学习技能的机会呢?
于是,今天我们来学习 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 创始人&董事长、极客帮创投创始合伙人蒋涛携手全球顶级开源基金会主席、董事,聚焦中国开源现状,直面开发者在开源技术、商业上的难题,你绝不可错过的开源巅峰对谈!立即免费围观:
更多精彩推荐
☞我只是追个直播,结果被拉进大咖们的群面对面群聊……
☞
本文链接:http://m.zhangshiyu.com/post/36854.html
- 主角轩辕琼华轩辕飞凤赵嬷嬷小说完整版在线阅读,莫名其妙世子妃免费看
- 合约到期,我走了你才求原谅?(全章节)-白志宋昭雪在线阅读
- 主角苏半夏苏含章小说完整版-穿成锦鲤体质,开启摆烂人生免费阅读全文
- 完结版《万族争霸:开局获得天帝镇狱体!》免费阅读
最新文章
-
- 数据结构(Java版)第六期:LinkedList与链表(一)
- A5433 Java+Jsp+Servlet+MySQL+微信小程序+LW+在线点餐小程序的设计与实现 源码 配置 文档
- Python:pytorch指令安装时Could not find a version that satisfies the requirement xxx (from versions: none)
- WebView2的踩坑记
- 使用LUKS对Linux磁盘进行加密
- 深入了解Linux —— 学会使用vim编辑器
- 主角轩辕琼华轩辕飞凤赵嬷嬷小说完整版在线阅读,莫名其妙世子妃免费看
- 无敌小神医秦岳赵冰凌小说大结局免费试读
- 宁秋棠江晟小说重生后,我甩了霸总享单身夜在线阅读
- 主人公叫古尘沙奴仆的小说我为真龙在线阅读全文
- 合约到期,我走了你才求原谅?(全章节)-白志宋昭雪在线阅读
- 主角苏半夏苏含章小说完整版-穿成锦鲤体质,开启摆烂人生免费阅读全文
Copyright © 2020-2022 ZhangShiYu.com Rights Reserved.豫ICP备2022013469号-1