关于Python使用turtle库画任意图的问题
作者:Mosu's_tech_blog 时间:2023-08-21 14:02:34
环境配置
系统: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() # 保持界面显示
来源:https://www.cnblogs.com/mosu/p/16085184.html
标签:Python,turtle库,画图
0
投稿
猜你喜欢
SQL中limit函数语法与用法(MYSQL获取限制某行数据)
2024-01-28 00:52:07
python requests.get带header
2022-07-28 20:50:40
Pyqt+matplotlib 实现实时画图案例
2022-01-06 12:52:23
HTML文件HEAD内部标签用法浅析
2008-07-06 20:56:00
python下如何让web元素的生成更简单的分析
2023-01-28 23:46:34
一文带你了解Golang中的WaitGroups
2024-04-25 13:18:17
浅谈Python单向链表的实现
2023-01-18 14:00:39
Python NumPy灰度图像的压缩原理讲解
2021-02-16 02:46:33
mysql设置指定ip远程访问连接实例
2024-01-26 04:36:36
比较经典技术普及帖 以你刚才在淘宝上买了一件东西
2022-01-19 06:59:15
MySQL启用慢查询日志记录方法
2024-01-25 11:42:16
ASP生成静态网页各种方法收集整理
2008-02-18 19:25:00
python 统计list中各个元素出现的次数的几种方法
2022-12-09 10:04:01
php时间不正确的解决方法
2023-11-18 07:33:15
Python打印scrapy蜘蛛抓取树结构的方法
2022-01-16 03:46:18
Python 日志logging模块用法简单示例
2021-10-08 19:47:20
python数字图像处理之骨架提取与分水岭算法
2023-03-07 15:59:50
golang 实现struct、json、map互相转化
2024-02-15 12:30:40
在弹出窗口用POST提交数据
2010-02-24 09:39:00
Django框架实现的普通登录案例【使用POST方法】
2021-10-12 18:05:10