没有合适的资源?快使用搜索试试~ 我知道了~
第15章 多媒体编程.pptx
需积分: 0 0 下载量 100 浏览量
2023-10-30
08:28:10
上传
评论
收藏 378KB PPTX 举报
温馨提示
试读
64页
第15章 多媒体编程.pptx
资源推荐
资源详情
资源评论
第15章 多媒体编程
董付国
微信公众号:Python小屋
15.1 图形编程
计算机图形学主要研究如何使用计算机来生成具有真实感的图形,涉及的内容
主要包括三维建模、图形几何变换、光照模型、纹理映射、阴影模型等内容,
在机械制造、虚拟现实、游戏开发、漫游系统设计、产品展示等多个领域具有
重要的应用。
Python的扩展模块PyOpenGL支持图形编程所需要的几乎所有功能。
15.1.1 创建图形编程框架
导入模块
import sys
from OpenGL.GL import *
from OpenGL.GLU import *
from OpenGL.GLUT import *
15.1.1 创建图形编程框架
使用OpenGL创建窗口类,重写构造函数,初始化OpenGL环境,指定显示模
式以及用于绘图的函数。
class MyPyOpenGLTest:
def __init__(self, width = 640, height = 480, title = b'MyPyOpenGLTest'):
glutInit(sys.argv)
glutInitDisplayMode(GLUT_RGBA | GLUT_DOUBLE | GLUT_DEPTH)
glutInitWindowSize(width, height)
self.window = glutCreateWindow(title)
glutDisplayFunc(self.Draw)
glutIdleFunc(self.Draw)
self.InitGL(width, height)
根据特定的需要,进一步完成OpenGL的初始化。
def InitGL(self, width, height):
glClearColor(0.0, 0.0, 0.0, 0.0)
glClearDepth(1.0)
glDepthFunc(GL_LESS)
glShadeModel(GL_SMOOTH)
glEnable(GL_POINT_SMOOTH)
glEnable(GL_LINE_SMOOTH)
glEnable(GL_POLYGON_SMOOTH)
glMatrixMode(GL_PROJECTION)
glHint(GL_POINT_SMOOTH_HINT,GL_NICEST)
glHint(GL_LINE_SMOOTH_HINT,GL_NICEST)
glHint(GL_POLYGON_SMOOTH_HINT,GL_FASTEST)
glLoadIdentity()
gluPerspective(45.0, float(width)/float(height), 0.1, 100.0)
glMatrixMode(GL_MODELVIEW)
15.1.1 创建图形编程框架
剩余63页未读,继续阅读
资源评论
尝试学RE中
- 粉丝: 37
- 资源: 18
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功