OK。我厌倦了使用google搜索和阅读大量文档而没有结果。按像素绘制pyglet(python)
我的目标很简单:让pyglet逐个像素地绘制图像。
我一直在寻找小时,没有结果。任何人都可以举一个简短程序的例子,画一个显示器来指定每个像素的颜色吗?例如:绘制从黑色到白色的渐变。
OK。我厌倦了使用google搜索和阅读大量文档而没有结果。按像素绘制pyglet(python)
我的目标很简单:让pyglet逐个像素地绘制图像。
我一直在寻找小时,没有结果。任何人都可以举一个简短程序的例子,画一个显示器来指定每个像素的颜色吗?例如:绘制从黑色到白色的渐变。
只要你知道这是要花费很长时间 ...:
pyglet.graphics.draw
可以得出一个或多个点,当你通过它pyglet.gl.GL_POINTS
,你可以通过属性,如颜色,以及作为坐标。例如:
for i in range(50):
for j in range(50):
color = int(2.56 * (i + j))
pyglet.graphics.draw(1, pyglet.gl.GL_POINTS,
('v2i', (i, j)),
('c3B', (color, color, color))
)
绘制一个50乘50的正方形,黑色到白色对角线渐变。只是不要指望它的速度特别快;-) - GL确实是针对图形提供更高级别的抽象,而不是“逐像素”绘画。
通过一次计算(比如说)一行并绘制该图像,而不是单独绘制像素,可以获得更多的额外速度。但它仍然不会超快!)
谢谢亚历克斯!我使用你的想法,因为我只是以这种像素方式进行调试。不需要高性能。 – 2010-08-31 05:01:58
@曼纽尔,不客气! – 2010-08-31 05:07:01
你需要使用pyglet吗? pygame会使这更容易 – 2010-08-20 06:55:35
@gnibbler:是的,我的代码最初是用pygame编写的,它起作用(至少在家中)。但我需要在我的大学运行它,我无法让virtualenv支持pygame ...所以我去了pyglet – 2010-08-31 05:04:05