如何使用Python turtle.py读取像素颜色
我正在为学校的课程准备一些练习,涉及到Python的turtle
库。
学生们已经能画出很棒的图画,但我希望他们能识别已经画好的图形和颜色,这样他们就可以修改程序的行为。
比如,我想给他们提供一段代码,用来用turtle画一个迷宫,然后他们可以写代码让turtle在迷宫里移动(别担心,我会从简单的开始)。
有没有办法检测turtle已经画好的像素的颜色呢?
谢谢!
2 个回答
0
我会用一个数组来存放迷宫中所有的x和y坐标,就像上面提到的那样。然后,为了检测目的,给海龟周围定义一个框的大小。
1
Turtle库使用的是Tkinter的画布,你可以通过 turtle.getcanvas()
来获取这个画布。根据这个链接,你不能直接读取画布上某个像素的颜色,除非你先把画布转换成一张图片(位图),然后再从这张位图中读取颜色。
你可以尝试保持一个开放的数组,作为你画布的位图,并在你在画布上绘制新元素时自己更新这个数组。不过,这样做似乎不太实际,除非你的迷宫很简单,而且形状是方方正正的。