关于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 相关文章推荐
利用QT写一个极简单的图形化Python闹钟程序
Apr 07 Python
对于Python的框架中一些会话程序的管理
Apr 20 Python
实例解析Python设计模式编程之桥接模式的运用
Mar 02 Python
详解Python的collections模块中的deque双端队列结构
Jul 07 Python
Python使用SQLite和Excel操作进行数据分析
Jan 20 Python
对python PLT中的image和skimage处理图片方法详解
Jan 10 Python
对Python中的条件判断、循环以及循环的终止方法详解
Feb 08 Python
Python英文文本分词(无空格)模块wordninja的使用实例
Feb 20 Python
使用python实现数组、链表、队列、栈的方法
Dec 20 Python
python字符串,元组,列表,字典互转代码实例详解
Feb 14 Python
python爬取网易云音乐热歌榜实例代码
Aug 07 Python
python正则表达式 匹配反斜杠的操作方法
Aug 07 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
PHP数据库操作Helper类完整实例
2016/05/11 PHP
thinkphp修改配置进入默认首页的方法
2017/02/07 PHP
javascript 读取图片文件的大小
2009/06/25 Javascript
javascript 关于# 和 void的区别分析
2009/10/26 Javascript
js 上下左右键控制焦点(示例代码)
2013/12/14 Javascript
JS将所有对象s的属性复制给对象r(原生js+jquery)
2014/01/25 Javascript
JavaScript中的值类型详细介绍
2014/12/29 Javascript
JavaScript插件化开发教程(五)
2015/02/01 Javascript
实现无刷新联动例子汇总
2015/05/20 Javascript
js入门之Function函数的使用方法【新手必看】
2016/11/22 Javascript
js禁止浏览器的回退事件
2017/04/20 Javascript
Flask中获取小程序Request数据的两种方法
2017/05/12 Javascript
js动态引入的四种方法
2018/05/05 Javascript
Vue常用的几个指令附完整案例
2018/11/06 Javascript
浅谈v-for 和 v-if 并用时筛选条件方法
2019/11/07 Javascript
微信小程序 flexbox layout快速实现基本布局的解决方案
2020/03/24 Javascript
深入webpack打包原理及loader和plugin的实现
2020/05/06 Javascript
微信小程序抽奖组件的使用步骤
2021/01/11 Javascript
[01:34]2014DOTA2 TI预选赛预选赛 选手比赛房大揭秘!
2014/05/20 DOTA
使用Python的Flask框架实现视频的流媒体传输
2015/03/31 Python
Python同时向控制台和文件输出日志logging的方法
2015/05/26 Python
Python实现字符串反转的常用方法分析【4种方法】
2017/09/30 Python
django实现支付宝支付实例讲解
2019/10/17 Python
详解centos7+django+python3+mysql+阿里云部署项目全流程
2019/11/15 Python
wxPython修改文本框颜色过程解析
2020/02/14 Python
Python restful框架接口开发实现
2020/04/13 Python
python调用win32接口进行截图的示例
2020/11/11 Python
python温度转换华氏温度实现代码
2020/12/06 Python
Canvas在超级玛丽游戏中的应用详解
2021/02/06 HTML / CSS
Lookfantastic德国官网:英国知名美妆购物网站
2017/06/11 全球购物
公司营业员的自我评价
2014/03/04 职场文书
爱心捐款倡议书
2014/04/14 职场文书
2016党员党章学习心得体会
2016/01/14 职场文书
聊聊golang中多个defer的执行顺序
2021/05/08 Golang
JavaScript利用html5新方法操作元素类名详解
2021/11/27 Javascript
python解析照片拍摄时间进行图片整理
2022/07/23 Python