Pyglet的二维形状基元。
pyglet2d的Python项目详细描述
pyglet的多边形原语。
这个包提供了一个Shape对象,它可以充当库polygon和pyglet之间的接口。 前者提供处理形状的数字例程,后者可以处理opengl绑定。 使用pyglet2d,您可以将2d形状合并到应用程序中,而无需编写自己的opengl调用。
功能
- 除了标准构造函数(来自点的列表或数组),还提供了其他四个: Shape.regular_polygon、Shape.circle、Shape.rectangle和Shape.from_dict。 后者是一个基于规范的构造函数,很容易与json或yaml一起使用。
- Shape有两个方法可用作pyglet回调:Shape.draw和Shape.update。 可以给Shape一个速度和/或一个角速度,当调用Shape.update时,它将相应地更新。
- 可以使用方法Shape.scale、Shape.rotate、Shape.flip_x、Shape.flip_y、Shape.flip和Shape.translate或使用就地算法(例如shape += [5, 0])操作Shape。
- 或者,设置属性Shape.center和Shape.radius将分别转换和缩放形状。
- 由polygon提供的剪裁操作绑定到运算符、+、(并集)、&;(交叉点)、-(差异)和^(异或)。
- 其他polygon方法可以直接从Shape.poly属性访问,该属性存储Polygon对象。
- 通过布尔方法Shape.overlaps(other)和Shape.covers(other)为polygon函数提供快捷方式。
示例
有关用法示例,请参见tests/graphics_demo.py。 这个脚本也可以作为一个测试。 运行它以确保图形管道正常工作:
python tests/graphics_demo.py
安装
pip install pyglet2d --upgrade
开发
要运行所有测试,请运行:
tox
更改日志
0.2.1(2014-07-27)
- 所有就地操作现在都返回Shape,从而允许对操作进行链接。
0.2.0(2014-07-27)
- 向Shape.scale添加了可选参数y_factor和center。
- 实现了Shape.rotate。
- 实现角速度。
- 参数start_angle在Shape.regular_polygon中现在是弧度。
- graphics_test.py重命名为graphics_demo.py。
- 实现Shape.flip_x、Shape.flip_y和Shape.flip。
- 显式地将Polygon3数据样式设置为STYLE_NUMPY。
- 使用加法和减法运算符实现Shapeunion和difference。
- 比较具有不同顶点数的形状的相等性时不要抛出错误。
0.1.2(2014-07-26)
- 固定形状docstring。
- 把文件从拿破仑改成了努姆皮多克。
0.1.1(2014-07-26)
- 模拟对pyglet的图形调用,以便在没有显示的情况下进行测试(例如,在travis上)。
- 修复了文档中的intersphinx链接。
- 固定工作服。IO集成。
0.1.0(2014-07-25)
- pypi上的第一个版本。