python - 如何使用python中的图形库在窗口上绘制网格

标签 python

我想在窗口上绘制网格,以便我可以轻松绘制矩形并知道确切的点。我一直无法找到使用图形库的 python 方法。有更好的方法吗?

我在网上找不到任何主要使用图形的内容。

这是我到目前为止所拥有的:

from graphics import *

def main():
    win = GraphWin('Floor', 500, 500)
    win.setCoords(0.0, 0.0, 10.0, 10.0)
    win.setBackground("yellow")

    square = Rectangle(Point(5,5), Point(6,6))
    square.draw(win)
    square.setFill("black")

    win.getMouse()
    win.close()

main()

最佳答案

一个简单的方法是通过自己计算一些像素来添加网格:

from graphics import *

def main():
    win = GraphWin('Floor', 500, 500)

    win.setCoords(0.0, 0.0, 10.0, 10.0)
    win.setBackground("yellow")

    # draw grid
    for x in range(10):
        for y in range(10):
            win.plotPixel(x*50, y*50, "blue")

    square = Rectangle(Point(5,5), Point(6,6))
    square.draw(win)
    square.setFill("black")

    win.getMouse()
    win.close()

main()

这会向黄色窗口添加一个 10x10 像素网格:

Image with grid

如有必要,您可以通过绘制整条线(如 docs 中所述)来完成相同的操作,但代价是绘制速度(取决于网格大小应有多大)。

关于python - 如何使用python中的图形库在窗口上绘制网格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31398156/

相关文章:

python - 将参数列表作为输入传递给 SQL 查询

python - 删除链表中的节点 - 是否需要任何形式的垃圾收集?

内存中的python OpenCV jpeg压缩

python - 4 人锦标赛安排,Python

python - Docker 容器是否共享一个 Python GIL?

python - Twitter 应用程序中的 '__getitem__' 对象中没有属性 'set'

python - 如何从单个请求中测量/分析 "Datastore Reads/Writes"?

python - 迭代列表的 n 个连续元素(重叠)

python - 如何修复 MatMul Op 的 float64 类型与 float32 TypeError 类型不匹配?

python - LDA 生成的组件少于 Python 中要求的组件