Turtle – 使用箭头键画线

Turtle – 使用箭头键画线

在这篇文章中,我们将学习如何在Turtle图形中使用键盘(方向键)画线。我们先来讨论一下下面实现中使用的一些方法。

  1. wn.listen()。使用这个,我们就可以给键盘输入
  2. wn.onkeypress(func, “key”)。这个函数用于将func与按键的释放事件绑定。为了能够注册按键事件,TurtleScreen必须有焦点。
  3. setx(position):这个方法用来设置Turtle的第二个坐标为x,保持第一个坐标不变 这里,无论Turtle的位置是什么,它都会将x坐标设置为给定的输入,保持y坐标不变。
  4. sety(position):这个方法用来设置Turtle的第二个坐标为y,保持第一个坐标不变 这里,无论Turtle的位置是什么,它都会将y坐标设置为给定的输入,保持x坐标不变。
  5. ycor()。这个函数用来返回Turtle的当前位置的y坐标。它不需要任何参数。
  6. xcor()。这个函数用来返回Turtle的当前位置的x坐标。它不需要任何参数
  7. head.penup:把笔拿起来,这样Turtle在移动时就不会画出一条线。
    8.head.hideturtle。这个方法是用来使Turtle隐身的。当你正在进行复杂的绘图时,这样做是个好主意,因为隐藏Turtle会明显加快绘图速度。这个方法不需要任何参数。
  8. head.clear:该功能用于从屏幕上删除Turtle的图画。
    10.head.write。这个函数用来在当前的Turtle位置写文字。

步骤:

1.导入Turtle模块。
2.找一个屏幕来画画
3.为Turtle定义两个实例,一个是笔,另一个是头。
4.头部是为了告诉人们当前按的是哪个键
5.定义Turtle的上、下、左、右运动的函数。
6.在各自的上、左、右、下函数中,通过改变x和y坐标,设置箭头在上、左、右、下方向分别移动100个单位。
7.使用函数listen()来提供键盘输入。
8.使用onkeypress,以便注册按键事件。

以下是上述方法的Python实现:

# import for turtle module
import turtle
 
# making a workScreen
wn = turtle.Screen()
 
# defining 2 turtle instance
head = turtle.Turtle()
pen = turtle.Turtle()
 
# head is for telling which key is pressed
head.penup()
head.hideturtle()
 
# head is at 0,260 coordinate
head.goto(0, 260)
head.write("This is to tell which key is currently pressed",
           align="center", font=("courier", 14, "normal"))
 
 
def f():
    y = pen.ycor()
    pen.sety(y+100)
    head.clear()
    head.write("UP", align="center", font=("courier", 24, "normal"))
 
 
def b():
    y = pen.ycor()
    pen.sety(y-100)
    head.clear()
    head.write("Down", align="center", font=("courier", 24, "normal"))
 
 
def l():
    x = pen.xcor()
    pen.setx(x-100)
    head.clear()
    head.write("left", align="center", font=("courier", 24, "normal"))
 
 
def r():
    x = pen.xcor()
    pen.setx(x+100)
    head.clear()
    head.write("Right", align="center", font=("courier", 24, "normal"))
 
 
wn.listen()
wn.onkeypress(f, "Up")  # when up is pressed pen will go up
wn.onkeypress(b, "Down")  # when down is pressed pen will go down
wn.onkeypress(l, "Left")  # when left is pressed pen will go left
wn.onkeypress(r, "Right")  # when right is pressed pen will go right
# this is to stop the turtle window from closing until the close button is clicked
turtle.mainloop()

输出:

Turtle - 使用箭头键画线

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

Python Turtle