计算机图形学实验指导书--xhp.doc

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

《计算机图形学》 实 验 指 导 书 软件学院 软件理论系 2013年2月22日 前 言 随着计算机科学与技术的迅猛发展,特别是大规模集成电路和超大规模集成电路技术的飞速发展,计算机已经成为一种高速、费用低的生成图形的有效工具。计算机图形学作为利用计算机生成图形的技术,已经越来越广泛地在各个领域得到应用。随着计算机图形学应用领域的拓宽和应用水平的提高,人们越来越重视对该项技术的研究和利用。当今,计算机图形学已经成为了计算机科学技术领域的一个重要研究方向,并被广泛的应用于科学计算、工程设计、医药、工业、艺术、娱乐业、广告业、教育与培训、商业和政府部门等。 鉴于计算机图形学的重要性和应用的广泛性,计算机科学与技术专业将其设置为专业必选的选修课。它主要是研究用计算机及其图形设备来输入、表示、变换、运算和输出图形的原理、算法及系统。通过对本课程的学习,使学生对计算机图形学有一个完整的了解,并为进行计算机图形学应用和研究打下扎实基础。 为了让学生深入理解各种图形算法和相关理论知识,贯彻学生学习知识是为了应用知识、应用就要追求创新应用的思想和意识,设计了8个实验。通过实验,使学生更加深入的理解计算机图形系统的工作机理和基本图形生成和处理算法。 实现语言为Turbo C 、Visual C++ 6.0、OpenGl,或其它学生掌握的高级语言。 这些实验是对学生的一种多全面训练。它着眼于原理与应用的结合,使学生学会如何把书上学到的知识用于解决实际问题,培养软件工作所需要的动手能力;另一方面,能使书上的知识变活,起到深化理解和灵活掌握教学内容的目的。 目 录 实验要求及实验报告规范 1 实验一 交互式绘图技术的实现 2 实验二 直线、圆弧及椭圆弧的生成算法 5 实验三 多边形的区域填充 7 实验四 二维几何变换 9 实验五 裁剪算法 10 实验六 三维图形变换 11 实验七 曲线与曲面 12 实验八 真实感图形绘制 14 参考文献 15 附录A C程序绘图基础 16 附录B Visual C++图形程序设计 23 一、实验目的 23 二、实验任务(需要课外学时8学时) 23 三、基础知识和实验步骤 23 (一) Visual C++ 6.0应用程序开发方法 23 (二) 图形设备接口和图形程序设计 26 (三)鼠标编程 36 (四)菜单程序设计 42 四、实验总结 46 附录C OpenGL图形程序设计 47 实验要求及实验报告规范 一、实验的性质、目的和任务 本实验是与本专业课《计算机图形学》相配套的,通过计算机图形学实验教学,引导学生由浅入深地掌握计算机图形学理论与相关算法,具有一定实践体会和相关的编程能力及图形处理的能力,为毕业设计和毕业后从事计算机绘图、计算机辅助设计、辅助教学、辅助工程、图形处理等打下基础。本实验教学主要内容是要求学生编程实现各种图形的绘制,强化学生的程序设计能力和程序调试能力,使学生巩固所学各种图形的生成算法的理论知识本实验教学的基本要求是: 实验课前,学生必须预习实验指导书中的实验内容,了解本次实验的目的、要求、原理、算法、步骤等,准备好实验的程序设计算法描述与关键分析内容; 准备好程序和测试数据,上机调试、运行; 完成每个实验后进行结果对比分析,完成实验报告。实验设备:计算机 实验使用的语言:C++、 四、考核与报告 本课程的评分方法是考查,作为平时成绩占学期期末总成绩的0%。每个实验完成后必须完成相应的实验报告。实验报告占0%按照教学计划的实验现场编程序,演示计算结果占0%10%了解OpenGL的库函数 二、实验要求 1、用Visual C++设计一个简易的交互式绘图软件,能够实现铅笔绘图,以及直线、圆等基本图形的绘制; 2、能够实现橡皮筋画线或圆、拾取、拖动、撤销和重做等交互式技术; 3、能够用OpenGL函数库实现橡皮筋技术和拾取操作。 三、算法提示 (一)铅笔绘图的实现: 1、建一个MFC AppWizard(exe)工程(具体操作见附录B),新增“绘图”菜单,并在该菜单下添加子菜单“铅笔”; 2、向视图类中添加1个菜单消息响应函数和3个鼠标消息响应函数,并输入时间处理程序代码。 (1)新增成员变量: public: int drawMode; //画图模式,1表示铅笔 int isDrag; //鼠标是否是拖动,1表示拖动,0表示移动 CPoint p0; //铅笔的起点 (2)初始化变量: CMy11View::CMy11View() { // TODO: add construction code here drawMode=0; isDrag=0; } (3)在

文档评论(0)

xinshengwencai + 关注
实名认证
内容提供者

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

版权声明书
用户编号:5311233133000002

1亿VIP精品文档

相关文档