Python Turtle – 图形键盘命令

Python Turtle – 图形键盘命令

Python Turtle模块是一个图形工具,可以用光标在屏幕上绘制简单的图形。Python Turtle是Logo编程语言的一部分,它有类似的目的,即让用户在简单命令的帮助下在屏幕上绘制图形。Turtle是一个预装的模块,有内置的命令和功能,可以用来在屏幕上画图。本文将主要关注使用键盘命令创建图形,以及如何使用同样的方法来增加或改变图形的颜色。

使用到的函数:

  • Screen() – 用于创建一个用于绘图的画布
  • Turtle Motion:
  • forward(distance) | fd(distance) : 将Turtle向前移动。
  • backward(distance) | back(distance) | bk(distance) : 向后移动Turtle
  • right(distance) | rt(distance) : 向右移动Turtle
  • left(distance) | lt(distance) : 向左移动Turtle
  • circle(radius) : 绘制一个具有给定半径的圆。
  • Coloring:
  • color() : 设置颜色
  • begin_fill() : 这个方法在绘制要填充的形状之前被调用。
  • end_fill() :填充调用begin_fill()后绘制的形状。

下面给出了两种处理和讨论如何创建图形键盘的方法

方法1

步骤

  • 导入模块和子模块
  • 创建setup–setup()方法设置了一个大小为500×500的窗口。
  • 创建窗口–Screen()方法创建一个画布用于绘图。
  • 实例化Turtle对象
  • 将Turtle的速度设置为0,这是最大值
  • 设置可见性- showturtle() 方法设置Turtle的可见性。
  • 为了捕捉按键,我们需要定义几个函数,即上、下、左、右。默认情况下,Turtle是指向右边的。
  • setheading()方法将Turtle的方向改为给定的角度。
  • forward()方法将Turtle移动到指定的距离。
  • listen()方法在Turtle屏幕上设置焦点以捕获事件。
  • onkey()方法调用特定于捕获的按键的方法。onkey()的第一个参数是要调用的函数,第二个参数是按键。
    *上、下、左、右是键盘上相应的方向键。
  • 添加mainloop()命令,它可以防止应用程序在用户实际点击退出选项之前终止。

代码

import turtle
from turtle import *
 
setup(500, 500)
Screen()
turtle = turtle.Turtle()
turtle.speed(0)
showturtle()
 
 
def up():
    turtle.setheading(90)
    turtle.forward(100)
 
 
def down():
    turtle.setheading(270)
    turtle.forward(100)
 
 
def left():
    turtle.setheading(180)
    turtle.forward(100)
 
 
def right():
    turtle.setheading(0)
    turtle.forward(100)
 
 
listen()
onkey(up, 'Up')
onkey(down, 'Down')
onkey(left, 'Left')
onkey(right, 'Right')
 
mainloop()

输出

Python Turtle - 图形键盘命令

方法2:改变颜色

这与前面的例子类似,只是增加了几个键。现在我们增加了改变线条颜色的按键。

  • 如果用户按r,它就会变成红色。
  • 如果是g,它会变成绿色,如果是b,它会变成蓝色。
  • 要把线的颜色重设为黑色,用户必须按z。

另外,通过使用width()方法将Turtle的宽度设置为5px,可以增加线条的厚度。

代码

import turtle
from turtle import *
 
setup(500, 500)
Screen()
turtle = turtle.Turtle()
turtle.speed(0)
turtle.width(5)
showturtle()
 
 
def up():
    turtle.setheading(90)
    turtle.forward(100)
 
 
def down():
    turtle.setheading(270)
    turtle.forward(100)
 
 
def left():
    turtle.setheading(180)
    turtle.forward(100)
 
 
def right():
    turtle.setheading(0)
    turtle.forward(100)
 
 
def r():
    turtle.color("red")
 
 
def g():
    turtle.color("green")
 
 
def b():
    turtle.color("blue")
 
 
def z():
    turtle.color("black")
 
 
listen()
onkey(up, 'Up')
onkey(down, 'Down')
onkey(left, 'Left')
onkey(right, 'Right')
onkey(z, "z")
onkey(r, 'r')
onkey(g, 'g')
onkey(b, 'b')
 
mainloop()

输出

Python Turtle - 图形键盘命令

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

Python Turtle