关于Python使用turtle库画任意图的问题


Posted in Python onApril 01, 2022

环境配置

系统:Windows10

版本:python 3.8

Turtle扫盲

1.绘图窗体的设置

turtle.setup(width, height, startx, starty)

startx , starty 缺省在屏幕中心。

2.画笔控制函数

turtle.penup() #别名 turtle.pu(),抬起画笔
turtle.pendown() #别名 turtle.pd(),落下画笔
turtle.pensize(width) #别名 turtle.width(width),画笔宽度
turtle.pencolor(color) #color为颜色字符串或r,g,b值,画笔颜色

注:

颜色字符串 : turtle.pencolor("purple")
RGB的小数值: turtle.pencolor(0.63, 0.13, 0.94)
RGB的元组值: turtle.pencolor((0.63,0.13,0.94))

3.形状绘制函数

turtle.forward(d) #别名 turtle.fd(d),直线前进d(可为负数)个像素
turtle.circle(r, extent=None) #根据半径r绘制extent角度的弧形
turtle.setheading(angle) #别名 turtle.seth(angle),angle: 行进方向的绝对角度
turtle.left(angle) #海龟向左转,angle: 在海龟当前行进方向上旋转的角度
turtle.right(angle) #海龟向右转
turtle.goto(x, y) # 绝对坐标

Turtle画任意图

1.经典案例

import turtle as t
t.setup(650,650,200,200)
t.speed(10) # 画笔的速度,1到10递增
t.penup()
t.fd(-250)
t.pendown()
t.pensize(25)
t.pencolor("purple")
t.seth(-40)
for i in range(4):
	t.circle(40, 80)
	t.circle(-40, 80)
t.circle(40, 80/2)
t.fd(40)
t.circle(16, 180)
t.fd(40 * 2/3)
t.mainloop() # 保持界面显示,后面的语句失效

2.画任意图片

import turtle as t
import cv2
t.getscreen().colormode(255)
img1 = cv2.imread('2.jpg')[0: -2: 2] #填入你的图片绝对路径,建议100kb以下。
width = len(img1[0])
height = len(img1)
t.setup(width=width / 2 + 100, height=height + 100)
t.speed(8) 
t.pu()
t.goto(-width / 4 + 10, height / 2 - 10)
t.pd()
t.tracer(2000)
for k1, i in enumerate(img1):
    for j in i[::2]:
        t.pencolor((j[0], j[1], j[2]))
        t.fd(1)
    t.pu()
    t.goto(-width / 4 + 10, height / 2 - 10 - k1 - 1)
    t.pd()
t.done() # 保持界面显示

到此这篇关于Python turtle库画任意图的文章就介绍到这了,更多相关Python turtle库画图内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python对象的深拷贝和浅拷贝详解
Aug 25 Python
Python函数可变参数定义及其参数传递方式实例详解
May 25 Python
Python随机生成带特殊字符的密码
Mar 02 Python
Python提取Linux内核源代码的目录结构实现方法
Jun 24 Python
Python设计模式之命令模式简单示例
Jan 10 Python
解决pycharm界面不能显示中文的问题
May 23 Python
对python指数、幂数拟合curve_fit详解
Dec 29 Python
基于Python2、Python3中reload()的不同用法介绍
Aug 12 Python
画pytorch模型图,以及参数计算的方法
Aug 17 Python
django2.2安装错误最全的解决方案(小结)
Sep 24 Python
python使用scapy模块实现ARP扫描的过程
Jan 21 Python
Python实现打乒乓小游戏
Sep 25 Python
python套接字socket通信
python文件与路径操作神器 pathlib
Python下载商品数据并连接数据库且保存数据
Python turtle编写简单的球类小游戏
Pandas实现DataFrame的简单运算、统计与排序
Mar 31 #Python
Pandas数据结构之Series的使用
Mar 31 #Python
python获取字符串中的email
Mar 31 #Python
You might like
解决文件名解压后乱码的问题 将文件名进行转码的代码
2012/01/10 PHP
php和javascript之间变量的传递实现代码
2012/12/19 PHP
php变量作用域的深入解析
2013/06/03 PHP
Yii查询生成器(Query Builder)用法实例教程
2014/09/04 PHP
让whoops帮我们告别ThinkPHP6的异常页面
2020/03/02 PHP
基于node.js的快速开发透明代理
2010/12/25 Javascript
js禁止document element对象选中文本实现代码
2013/03/21 Javascript
JqueryMobile动态生成listView并实现刷新的两种方法
2014/03/05 Javascript
jquery 页眉单行信息滚动显示实现思路及代码
2014/06/26 Javascript
推荐5 个常用的JavaScript调试技巧
2015/01/08 Javascript
jQuery实现的导航动画效果(附demo源码)
2016/04/01 Javascript
jQuery制作图片旋转效果
2017/02/02 Javascript
Bootstrap表单控件学习使用
2017/03/07 Javascript
Angular中实现树形结构视图实例代码
2017/05/05 Javascript
JS失效 提示HTML1114: (UNICODE 字节顺序标记)的代码页 utf-8 覆盖(META 标记)的冲突的代码页 utf-8
2017/06/23 Javascript
详解layui弹窗父子窗口之间传参数的方法
2018/01/16 Javascript
快速了解vue-cli 3.0 新特性
2018/02/28 Javascript
JavaScript中Array方法你该知道的正确打开方法
2018/09/11 Javascript
vue iview多张图片大图预览、缩放翻转
2019/07/13 Javascript
教你如何用Node实现API的转发(某音乐)
2019/09/20 Javascript
Python实现Tab自动补全和历史命令管理的方法
2015/03/12 Python
Python Datetime模块和Calendar模块用法实例分析
2019/04/15 Python
NumPy 基本切片和索引的具体使用方法
2019/04/24 Python
Python3.7 读取 mp3 音频文件生成波形图效果
2019/11/05 Python
WxPython实现无边框界面
2019/11/18 Python
酒店工作职员求职简历的自我评价
2013/10/23 职场文书
八一演出活动方案
2014/02/03 职场文书
大学生党员自我批评思想汇报
2014/10/10 职场文书
乡镇防汛工作汇报
2014/10/28 职场文书
写景作文评语集锦
2014/12/25 职场文书
考察邀请函范文
2015/01/31 职场文书
自我工作评价范文
2015/03/06 职场文书
2015年暑期社会实践报告
2015/07/13 职场文书
2016年小学端午节活动总结
2016/04/01 职场文书
html+css实现赛博朋克风格按钮
2021/05/26 HTML / CSS
MySQL实现用逗号进行拼接、以逗号进行分割
2022/12/24 MySQL