环境
- Os: Deepin 15.5 desktop 64-Bit
- Python: Anaconda 5.2 For Linux Installer python 3.6 version
依赖
- Mesa-utils
- OpenGl es 2.0
- Qt5
- Freeglut
- Glfw3
- PyQt5
- pyopengl
安装
- 安装 OpenGL es 2.0
- sudo apt-get install mesa-utils 安装mesa-utils
- sudo apt-get install libgles2-mesa-dev 安装opengles2.0的库文件
- 报错:libc6-dev : 破坏: libperl5.26 (< 5.26.1-3) 可是 5.26.0-4 正要被安装
- 解决:sudo apt-get install libc-dev
- sudo apt-get install libgles2-mesa-dev
- 安装 Qt 5.9.5
- 下载 http://download.qt.io/official_releases/qt/5.9/5.9.5/
- cd 进入下载位置
- chmod +x ./qt-opensource-linux-x64-5.9.5.run
- sudo ./qt-opensource-linux-x64-5.9.5.run
- 安装过程当中要求注册,能够无论。可是后面安装的模块须要全选,默认并无
- 建议选用默认的安装路径 /opt/Qt5.9.5
- 安装 Freeglut 和 Glfw3
- conda install -c anaconda freeglut
- conda install -c menpo glfw3
- 安装PyQt5
- Anaconda 已经默认安装了这个模块。可是Qt5并无,默认安装了 Qt4
- 若是没有: conda install -c inso pyqt5 或者 conda install -c inso/label/sakia pyqt5
- 安装 pyopengl
- conda install -c conda-forge pyopengl
- 设置:Tools-Preference-IPython console-Graphics-Graphics backend-Backend-Qt5
- import matplotlib.pyplot as plt 使用plt画图查看Qt5是否正确安装
测试
- Hello World
import OpenGL.GLUT as glut
glut.glutInit()
glut.glutCreateWindow('Hello World')
- Demo
source:https://my.oschina.net/u/3018050/blog/1808448python
from OpenGL.GL import *
from OpenGL.GLU import *
from OpenGL.GLUT import *
def drawFunc():
#清楚以前画面
glClear(GL_COLOR_BUFFER_BIT)
glRotatef(0.1, 0,5,0)
#(角度,x,y,z)
glutWireTeapot(0.5)
#刷新显示
glFlush()
#使用glut初始化OpenGL
glutInit()
#显示模式:GLUT_SINGLE无缓冲直接显示|GLUT_RGBA采用RGB(A非alpha)
glutInitDisplayMode(GLUT_SINGLE | GLUT_RGBA)
#窗口位置及大小-生成
glutInitWindowPosition(0,0)
glutInitWindowSize(400,400)
glutCreateWindow(b"first")
#调用函数绘制图像
glutDisplayFunc(drawFunc)
glutIdleFunc(drawFunc)
#主循环
glutMainLoop()