如何在Python Turtle中创建自定义形状

如何在Python Turtle中创建自定义形状

在Turtle中,默认情况下,我们有一个箭头状的光标用于在画布上绘图。这可以改成其他预定义的形状,或者我们也可以创建一个自定义的形状,并以一个名字注册。不仅如此,我们甚至可以使用gif格式的图片来代替我们的光标。

将光标改成预定义的形状

shape()函数用于设置光标的形状。预定义的形状包括龟形、箭头、圆形、方形和三角形。

import turtle
 
# turtle object
c_turtle = turtle.Turtle()
   
# changing the cursor
# shape to circle
c_turtle.shape('circle')

输出 :

注册新的形状

Turtle模块有register_shape()函数用于注册自定义形状。

语法: turtle.register_shape(name, shape)
参数 :

  • name : 一个字符串–要注册的形状的名称。

  • shape : 一个包含自定义形状的坐标的元组。

形状参数的n元组参数,表示一个n边多边形的每个角的相对位置。让我们试着创建一个简单的钻石形状来理解这一点。
考虑这个钻石,对角线的长度=20,在笛卡尔平面上。

为了创建这个形状,我们需要按顺时针顺序传递这些坐标。

import turtle
 
# turtle object
dimond_turtle = turtle.Turtle()
 
# the coordinates
# of each corner
shape =((0, 0), (10, 10), (20, 0), (10, -10))
 
# registering the new shape
turtle.register_shape('diamond', shape)
 
# changing the shape to 'diamond'
dimond_turtle.shape('diamond')

输出 :

使用图像的Turtle光标
要使用图片作为光标,我们需要把图片文件的路径作为参数传给register_shape()。注意,这个图片必须是gif格式的。

import turtle
 
# turtle object
img_turtle = turtle.Turtle()
  
# registering the image
# as a new shape
turtle.register_shape('example.gif')
 
# setting the image as cursor
img_turtle.shape('example.gif')

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

Python Turtle