测试pyOpenGL-画红色三角形
在这之前要确保已经在python里导入OpenGL包了
from OpenGL.GL import *
from OpenGL.GLUT import *
from OpenGL.GLU import *
# 初始化GLUT并创建窗口
def initGL():
# 设置背景色为黑色
glClearColor(0.0, 0.0, 0.0, 1.0)
# 设置颜色模式为RGBA
glColor3f(1.0, 0.0, 0.0) # 红色
# 启用深度测试
glEnable(GL_DEPTH_TEST)
# 绘制一个三角形
def drawTriangle():
glBegin(GL_TRIANGLES) # 开始绘制三角形
glVertex2f(-0.5, -0.5) # 第一个顶点
glVertex2f(0.0, 0.5) # 第二个顶点
glVertex2f(0.5, -0.5) # 第三个顶点
glEnd() # 结束绘制
# 显示回调函数
def display():
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT) # 清除屏幕和深度缓冲区
glLoadIdentity() # 重置模型视图矩阵
drawTriangle() # 绘制三角形
glutSwapBuffers() # 交换缓冲区,更新显示
# 主函数
def main():
glutInit() # 初始化GLUT
glutInitDisplayMode(GLUT_RGBA | GLUT_DOUBLE | GLUT_DEPTH) # 设置显示模式
glutInitWindowSize(400, 300) # 设置窗口大小
glutInitWindowPosition(100, 100) # 设置窗口位置
wind = glutCreateWindow(b"PyOpenGL Triangle Example") # 创建窗口
initGL() # 初始化GLUT和OpenGL
glutDisplayFunc(display) # 注册显示回调函数
glutMainLoop() # 进入GLUT事件处理循环
if __name__ == "__main__":
main()