计算机图形学实指导.doc

  1. 1、本文档共43页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
计算机图形学实指导

实验课程任务与要求 目的与任务: 计算机图形学实验教学是为了将学生的计算机操作能力、分析能力、工程设计能力与应用实践结合起来,引导学生由浅入深地掌握计算机图形学理论与算法,掌握交互构图能力,具备工程应用的图形学基础。 实验基本要求:(以软件设计为主要表现形式) 上机前应准备好实验的程序设计算法描述与关键分析内容。 准备好程序测试数据和设备操作步骤,上机调试、运行。 完成每个实验后进行数据与程序对比分析。 写出实验报告(含实验题目,不同顺序或本次算法的比较与效果分析,给出运行结果。若实验未能通过,给出原因与今后改进措施)。 实验报告式样: 《计算机图形学》实验报告 实验题目 姓名 系别班级 学号 设计日期 指导教师 设计成绩 设计目的及要求 理论基础 算法设计与分析 程序调试及运行结果的自我分析与自我评价 设计心得及建议 实验一 VC++6.0+OpenGL绘图环境及简单图形的输出 学时安排:(2学时) 要求:(1)掌握VC++6.0+OpenGL绘图环境的设置; (2)利用OpenGL绘制简单图形并在设备上输出; (3)用 glut编程WM_CREATE ,WM_DESTROY ,WM_SIZE,WM_TIMER的响应函数。 如下所示在MySDOpenGLView.h中加入源代码。 public: //添加成员函数与成员变量 BOOL RenderScene(); BOOL SetupPixelFormat(void); void SetLogicalPalette(void); BOOL InitializeOpenGL(CDC* pDC); HGLRC m_hRC; //OpenGL绘制描述表 HPALETTE m_hPalette; //OpenGL调色板 CDC* m_pDC; //OpenGL设备描述表 如下所示在MySDOpenGLView.cpp中加入源代码。 BOOL CMySDOpenGLView::PreCreateWindow(CREATESTRUCT cs) { 。。。。。。 cs.style |=WS_CLIPCHILDREN | WS_CLIPSIBLINGS; //设置窗口类型 。。。。。。 } void CMySDOpenGLView::OnDraw(CDC* pDC) { 。。。。。。 RenderScene(); //渲染场景 。。。。。。 } int CMySDOpenGLView::OnCreate(LPCREATESTRUCT lpCreateStruct) { if (CView::OnCreate(lpCreateStruct) == -1) return -1; //初始化OpenGL和设置定时器 m_pDC = new CClientDC(this); SetTimer(1, 20, NULL); InitializeOpenGL(m_pDC); return 0; } void CMySDOpenGLView::OnDestroy() { CView::OnDestroy(); //删除调色板和渲染上下文、定时器 ::wglMakeCurrent(0,0); ::wglDeleteContext( m_hRC); if (m_hPalette) DeleteObject(m_hPalette); if ( m_pDC ) { delete m_pDC; } KillTimer(1); } void CMySDOpenGLView::OnSize(UINT nType, int cx, int cy) { CView::OnSize(nType, cx, cy); //添加窗口缩放时的图形变换函数 glViewport(0,0,cx,cy); glMatrixMode (GL_PROJECTION); glLoadIdentity (); gluPerspective(60.0, (GLfloat) cx/(GLfloat) cy, 1.0, 20.0); glMatrixMode(GL_MODELVIEW); glL

文档评论(0)

xll805 + 关注
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档