关于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的一些用法分享
Oct 07 Python
用Python脚本生成Android SALT扰码的方法
Sep 18 Python
python统计日志ip访问数的方法
Jul 06 Python
python下载图片实现方法(超简单)
Jul 21 Python
Python设计模式之门面模式简单示例
Jan 09 Python
python 处理dataframe中的时间字段方法
Apr 10 Python
pandas.DataFrame.to_json按行转json的方法
Jun 05 Python
使用pandas批量处理矢量化字符串的实例讲解
Jul 10 Python
python使用tkinter库实现五子棋游戏
Jun 18 Python
在django中,关于session的通用设置方法
Aug 06 Python
python实现猜拳小游戏
Apr 05 Python
Pytest中skip skipif跳过用例详解
Jun 30 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
新版mysql+apache+php Linux安装指南
2006/10/09 PHP
PHP中的Memcache详解
2014/04/05 PHP
PHP对象递归引用造成内存泄漏分析
2014/08/28 PHP
Drupal简体中文语言包安装教程
2014/09/27 PHP
php实现随机生成易于记忆的密码
2015/06/19 PHP
PHP+MySQL之Insert Into数据插入用法分析
2015/09/27 PHP
php微信开发之关注事件
2018/06/14 PHP
关于可运行代码无法正常执行的使用说明
2010/05/13 Javascript
JavaScript的类型转换(字符转数字 数字转字符)
2010/08/30 Javascript
基于Jquery的文字自动截取(提供源代码)
2011/08/09 Javascript
原生js和jquery实现图片轮播特效
2015/04/23 Javascript
JS+CSS实现仿msn风格选项卡效果代码
2015/10/22 Javascript
jQuery模拟下拉框选择对应菜单的内容
2017/03/07 Javascript
基于JQuery的Ajax方法使用详解
2017/08/16 jQuery
基于axios封装fetch方法及调用实例
2018/02/05 Javascript
jQuery获取随机颜色的实例代码
2018/05/21 jQuery
JS原生带缩略图的图片切换效果
2018/10/10 Javascript
使用vue-router切换页面时,获取上一页url以及当前页面url的方法
2019/05/06 Javascript
JS制作简易计算器的实例代码
2020/07/04 Javascript
[54:43]DOTA2-DPC中国联赛 正赛 CDEC vs Dynasty BO3 第一场 2月22日
2021/03/11 DOTA
Python 正则表达式操作指南
2009/05/04 Python
详解python实现线程安全的单例模式
2018/03/05 Python
python实现的批量分析xml标签中各个类别个数功能示例
2019/12/30 Python
python能在浏览器能运行吗
2020/06/17 Python
python利用线程实现多任务
2020/09/18 Python
在PyCharm中安装PaddlePaddle的方法
2021/02/05 Python
日本民宿预约平台:STAY JAPAN
2017/07/01 全球购物
英国领先的大码时装品牌之一:Elvi
2018/08/26 全球购物
测试工程师岗位职责
2013/11/28 职场文书
出纳岗位职责范本
2013/12/01 职场文书
争先创优活动总结
2014/08/27 职场文书
2015年教师节感恩寄语
2015/03/23 职场文书
2015教师个人师德工作总结
2015/10/23 职场文书
经典格言警句:没有热忱,世间便无进步
2019/11/13 职场文书
jquery插件实现代码雨特效
2021/04/24 jQuery
JS开发前端团队展示控制器来为成员引流
2022/08/14 Javascript