百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 编程字典 > 正文

浅谈Python 中的 Turtle(海龟绘图)库

toyiye 2024-08-17 23:47 5 浏览 0 评论



海龟绘图(Turtle)最初来自于 Wally Feurzeig, Seymour Papert 和 Cynthia Solomon 于 1967 年所创造的 Logo 编程语言,特别适合引导孩子学习编程。当然,也可以在实际项目中用于很多图形界面绘制,如游戏、媒体等应用领域。

海龟绘图怎么绘图呢?

海龟绘图主要是通过组合不同命令来完成一个复杂的图形界面,如一只海龟的起始位置在 x 、 y 平面的 (0,0)坐标点上,通过向右移动,向上移动,向左移动,画圆等操作命令完成一个比较复杂的界面。

如用 turtle 绘制一朵可以送给女朋友或男朋友的玫瑰花,该案例来源于网络,感谢作者。

这里,录了一段视频,供大家观赏

绘制完成这样一朵玫瑰花,其实就是同单个画圆、画方以及位移命令组合在一起绘制完成,将一朵玫瑰花分成多个部分,一个部分一个部分组合命令绘制,最后在将玫瑰花个部分组合在一起,这样就绘制完成了一朵漂亮的玫瑰花。

比如绘制玫瑰花瓣的代码,其中 begin_fill 你可以理解为填充颜色的意思,在你需要填充颜色区域前 begin_fill,再在区域后 end_fill 即可将 fillcolor 填充到绘制区域。

# 花蕊 turtle.fillcolor("red") turtle.begin_fill() turtle.circle(20, 180) turtle.circle(25, 110) turtle.left(50) turtle.circle(60, 45) turtle.circle(20, 170) turtle.right(24) turtle.fd(30) turtle.left(10) turtle.circle(30, 110) turtle.fd(20) turtle.left(40) turtle.circle(90, 70) turtle.circle(30, 150) turtle.right(30) turtle.fd(15) turtle.circle(80, 90) turtle.left(15) turtle.fd(45) turtle.right(165) turtle.fd(20) turtle.left(155) turtle.circle(150, 80) turtle.left(50) turtle.circle(150, 90) turtle.end_fill()

再比如绘制一片叶子,还是将不同的命令组合在一起绘制完成一片树叶。

# 叶子1 turtle.fd(30) turtle.left(90) turtle.fd(25) turtle.left(45) turtle.fillcolor("green") turtle.begin_fill() turtle.circle(-80, 90) turtle.right(90) turtle.circle(-80, 90) turtle.end_fill() turtle.right(135) turtle.fd(60) turtle.left(180) turtle.fd(85) turtle.left(90) turtle.fd(80)

那这么多命令都是什么意思呢?别急,下面即将为大家整理出来

移动和绘制

forward() | fd() 前进

backward() | bk() | back() 后退

right() | rt() 右转

left() | lt() 左转

goto() | setpos() | setposition() 前往/定位

setx() 设置x坐标

sety() 设置y坐标

setheading() | seth() 设置朝向

home() 返回原点

circle() 画圆

dot() 画点

stamp() 印章

clearstamp() 清除印章

clearstamps() 清除多个印章

undo() 撤销

speed() 设置画笔速度

获取海龟的状态

position() | pos() 获取画笔位置

towards() 目标方向

xcor() x坐标

ycor() y坐标

heading() 朝向

distance() 距离

设置与度量单位

degrees() 角度

radians() 弧度

画笔控制

绘图状态

pendown() | pd() | down() 画笔落下

penup() | pu() | up() 画笔抬起

pensize() | width() 画笔粗细

pen() 画笔

isdown() 画笔是否落下

颜色控制

color() 颜色

pencolor() 画笔颜色

fillcolor() 填充颜色

填充

filling() 是否填充

begin_fill() 开始填充

end_fill() 结束填充

更多绘图控制

reset() 重置

clear() 清空

write() 书写

海龟状态

可见性

showturtle() | st() 显示海龟

hideturtle() | ht() 隐藏海龟

isvisible() 是否可见

外观

shape() 形状

resizemode() 大小调整模式

shapesize() | turtlesize() 形状大小

shearfactor() 剪切因子

settiltangle() 设置倾角

tiltangle() 倾角

tilt() 倾斜

shapetransform() 变形

get_shapepoly() 获取形状多边形

使用事件

onclick() 当鼠标点击

onrelease() 当鼠标释放

ondrag() 当鼠标拖动

特殊海龟方法

begin_poly() 开始记录多边形

end_poly() 结束记录多边形

get_poly() 获取多边形

clone() 克隆

getturtle() | getpen() 获取海龟画笔

getscreen() 获取屏幕

setundobuffer() 设置撤消缓冲区

undobufferentries() 撤消缓冲区条目数

TurtleScreen/Screen 方法

窗口控制

bgcolor() 背景颜色

bgpic() 背景图片

clear() | clearscreen() 清除屏幕所有内容

reset() | resetscreen() 重置

screensize() 屏幕大小

setworldcoordinates() 设置世界坐标系

动画控制

delay() 延迟

tracer() 追踪

update() 更新

使用屏幕事件

listen() 监听

onkey() | onkeyrelease() 当键盘按下并释放

onkeypress() 当键盘按下

onclick() | onscreenclick() 当点击屏幕

ontimer() 当达到定时

mainloop() | done() 主循环

设置与特殊方法

mode() 模式

colormode() 颜色模式

getcanvas() 获取画布

getshapes() 获取形状

register_shape() | addshape() 添加形状

turtles() 所有海龟

window_height() 窗口高度

window_width() 窗口宽度

输入方法

textinput() 文本输入

numinput() 数字输入

Screen 专有方法

bye() 退出

exitonclick() 当点击时退出

setup() 设置

title() 标题

以上就是 海龟绘图( Turtle )常用的命令代码,欢迎学习,希望对你有所帮助。

相关推荐

# Python 3 # Python 3字典Dictionary(1)

Python3字典字典是另一种可变容器模型,且可存储任意类型对象。字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花括号({})中,格式如...

Python第八课:数据类型中的字典及其函数与方法

Python3字典字典是另一种可变容器模型,且可存储任意类型对象。字典的每个键值...

Python中字典详解(python 中字典)

字典是Python中使用键进行索引的重要数据结构。它们是无序的项序列(键值对),这意味着顺序不被保留。键是不可变的。与列表一样,字典的值可以保存异构数据,即整数、浮点、字符串、NaN、布尔值、列表、数...

Python3.9又更新了:dict内置新功能,正式版十月见面

机器之心报道参与:一鸣、JaminPython3.8的热乎劲还没过去,Python就又双叒叕要更新了。近日,3.9版本的第四个alpha版已经开源。从文档中,我们可以看到官方透露的对dic...

Python3 基本数据类型详解(python三种基本数据类型)

文章来源:加米谷大数据Python中的变量不需要声明。每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。在Python中,变量就是变量,它没有类型,我们所说的"类型"是变...

一文掌握Python的字典(python字典用法大全)

字典是Python中最强大、最灵活的内置数据结构之一。它们允许存储键值对,从而实现高效的数据检索、操作和组织。本文深入探讨了字典,涵盖了它们的创建、操作和高级用法,以帮助中级Python开发...

超级完整|Python字典详解(python字典的方法或操作)

一、字典概述01字典的格式Python字典是一种可变容器模型,且可存储任意类型对象,如字符串、数字、元组等其他容器模型。字典的每个键值key=>value对用冒号:分割,每个对之间用逗号,...

Python3.9版本新特性:字典合并操作的详细解读

处于测试阶段的Python3.9版本中有一个新特性:我们在使用Python字典时,将能够编写出更可读、更紧凑的代码啦!Python版本你现在使用哪种版本的Python?3.7分?3.5分?还是2.7...

python 自学,字典3(一些例子)(python字典有哪些基本操作)

例子11;如何批量复制字典里的内容2;如何批量修改字典的内容3;如何批量修改字典里某些指定的内容...

Python3.9中的字典合并和更新,几乎影响了所有Python程序员

全文共2837字,预计学习时长9分钟Python3.9正在积极开发,并计划于今年10月发布。2月26日,开发团队发布了alpha4版本。该版本引入了新的合并(|)和更新(|=)运算符,这个新特性几乎...

Python3大字典:《Python3自学速查手册.pdf》限时下载中

最近有人会想了,2022了,想学Python晚不晚,学习python有前途吗?IT行业行业薪资高,发展前景好,是很多求职群里严重的香饽饽,而要进入这个高薪行业,也不是那么轻而易举的,拿信工专业的大学生...

python学习——字典(python字典基本操作)

字典Python的字典数据类型是基于hash散列算法实现的,采用键值对(key:value)的形式,根据key的值计算value的地址,具有非常快的查取和插入速度。但它是无序的,包含的元素个数不限,值...

324页清华教授撰写【Python 3 菜鸟查询手册】火了,小白入门字典

如何入门学习python...

Python3.9中的字典合并和更新,了解一下

全文共2837字,预计学习时长9分钟Python3.9正在积极开发,并计划于今年10月发布。2月26日,开发团队发布了alpha4版本。该版本引入了新的合并(|)和更新(|=)运算符,这个新特性几乎...

python3基础之字典(python中字典的基本操作)

字典和列表一样,也是python内置的一种数据结构。字典的结构如下图:列表用中括号[]把元素包起来,而字典是用大括号{}把元素包起来,只不过字典的每一个元素都包含键和值两部分。键和值是一一对应的...

取消回复欢迎 发表评论:

请填写验证码