基于ctype的pyopengl-tkinter的OpenGL帧
项目描述
pyopengltk
Tkinter - 使用ctypes的OpenGL帧
基于ctypes的pyopengl-tkinter的OpenGL帧(无需编译togl)
由Jon Wright收集,2018年1月。
基本示例
此示例创建了一个包含整个窗口的OpenGLFrame
的窗口。我们配置它以动画(不断重绘)的方式清除屏幕,使用绿色。包括了一个简单的帧率计数器。上下文信息被打印到终端。
import time
import tkinter
from OpenGL import GL
from pyopengltk import OpenGLFrame
class AppOgl(OpenGLFrame):
def initgl(self):
"""Initalize gl states when the frame is created"""
GL.glViewport(0, 0, self.width, self.height)
GL.glClearColor(0.0, 1.0, 0.0, 0.0)
self.start = time.time()
self.nframes = 0
def redraw(self):
"""Render a single frame"""
GL.glClear(GL.GL_COLOR_BUFFER_BIT)
tm = time.time() - self.start
self.nframes += 1
print("fps",self.nframes / tm, end="\r" )
if __name__ == '__main__':
root = tkinter.Tk()
app = AppOgl(root, width=320, height=200)
app.pack(fill=tkinter.BOTH, expand=tkinter.YES)
app.animate = 1
app.after(100, app.printContext)
app.mainloop()
Github上的仓库还包含更多示例。
安装
从PyPI
pip install pyopengltk
从源
git clone https://github.com/jonwright/pyopengltk
cd pyopengltk
pip install .
归属
基于他人的工作。
C + Tcl/Tk示例
- 项目URL: http://github.com/codeplea/opengl-tcltk/ (zlib许可证)
- 文章在: https://codeplea.com/opengl-with-c-and-tcl-tk
Python + Tkinter(无pyopengl)示例
- 项目URL: http://github.com/arcanosam/pytkogl/ (The Code Project Open License)
- 文章在: http://www.codeproject.com/Articles/1073475/OpenGL-in-Python-with-TKinter
pyopengl
- 从
pyopengl/Tk/__init__.py
复制了大量的代码。
项目详情
下载文件
下载适用于您平台的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。
源分布
pyopengltk-0.0.4.tar.gz (11.2 kB 查看哈希值)
构建分布
pyopengltk-0.0.4-py2.py3-none-any.whl (12.0 kB 查看哈希值)
关闭
pyopengltk-0.0.4.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 4ec9bd44e5b3a8a4f3901d611b572c6d55463450ecf7d20bc51c00771b669650 |
|
MD5 | f382f39b9bd7e07e3eab4c1774922e66 |
|
BLAKE2b-256 | b90f6a7466103b044b36f5ab3784fccf7e348bd0a1670fea58ded840c03f51f4 |
关闭
pyopengltk-0.0.4-py2.py3-none-any.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 664c9c97e7f24d7664f4560064e4a4dc8a40880337483080f1b2937de052379e |
|
MD5 | 3a14360ecefc3d7a2ab99d12ffaa4cd8 |
|
BLAKE2b-256 | 7e7f09782e32c071d4774321b9f8349a5e0f11258930e03a28ffb6c978cbe4b8 |