我们可以在 turtle.shape() 中添加形状吗?
Can we add shape in turtle.shape()?
我想编写白板程序,所以我想把乌龟的形状改成笔。
我想知道 turtle.shape()
中我们是否有 turtle 中的东西可以进一步添加 - 比如笔 - 形状?
如果我们有,我们如何添加它?
添加新海龟光标形状的关键是屏幕方法 register_shape()
(又名 addshape()
)。您可以使用多边形(单个或多个)或图像文件(传统上是 *.GIF 但最近也有 *.PNG,具体取决于 tkinter 的基础版本)来定义新形状。
注册形状后,可以使用乌龟shape()
方法将光标更改为新形状。基于乌龟文档:
from turtle import Screen, Turtle
screen = Screen()
screen.register_shape("custom.gif")
turtle = Turtle()
turtle.shape("custom.gif")
但是,图像不会随乌龟一起旋转。为此,您可以定义基于多边形的形状:
screen.register_shape("right_triangle", ((-10, 10), (-10, -10), (10, -10)))
turtle = Turtle()
turtle.shape("right_triangle")
尽管多边形图像的方向可能与您预期的不同,因此您可能需要旋转海龟或调整多边形坐标。
我想编写白板程序,所以我想把乌龟的形状改成笔。
我想知道 turtle.shape()
中我们是否有 turtle 中的东西可以进一步添加 - 比如笔 - 形状?
如果我们有,我们如何添加它?
添加新海龟光标形状的关键是屏幕方法 register_shape()
(又名 addshape()
)。您可以使用多边形(单个或多个)或图像文件(传统上是 *.GIF 但最近也有 *.PNG,具体取决于 tkinter 的基础版本)来定义新形状。
注册形状后,可以使用乌龟shape()
方法将光标更改为新形状。基于乌龟文档:
from turtle import Screen, Turtle
screen = Screen()
screen.register_shape("custom.gif")
turtle = Turtle()
turtle.shape("custom.gif")
但是,图像不会随乌龟一起旋转。为此,您可以定义基于多边形的形状:
screen.register_shape("right_triangle", ((-10, 10), (-10, -10), (10, -10)))
turtle = Turtle()
turtle.shape("right_triangle")
尽管多边形图像的方向可能与您预期的不同,因此您可能需要旋转海龟或调整多边形坐标。