资源预览内容
第1页 / 共6页
第2页 / 共6页
第3页 / 共6页
第4页 / 共6页
第5页 / 共6页
第6页 / 共6页
亲,该文档总共6页全部预览完了,如果喜欢就下载吧!
资源描述
本文格式为Word版,下载可任意编辑计算机图形学实验指导书(2022) 计算机图形学 上机测验指导书 机电工程系 丁有和编 班级: 学号: 姓名 南京师范大学 能源与机械工程学院 2022年10月 目 录 上机测验说明 . 2 测验1 直线 . 3 测验2 矩形、多边形和圆 . 16 测验3 曲线 . 21 测验4 对象拾取和对象颜色修改 . 31 测验5 删除和移动 . 40 - 1 - 上机测验说明 1. 不同与其他课程的测验,本课程的测验是将各次分测验的内容组合成一个简朴的CAD软件系统。故每次测验后,需要自行保存测验中所写的代码,且一旦测验1创造的工程名定下来之后,以后测验的工程名就难以更改,切记切记! 2. 每次测验后,请实时完本金测验书中的斟酌与问答。由于这些题目都是涉及到本次测验中的内容,因此做完每次测验后面可回复,并做好每次测验的预习工作。若是文字斟酌与问答题,那么将回复的文字内容写在工程中的ReadMe.txt中;若是程序题,那么将添加或修改的过程和代码一并写在ReadMe.txt,留神要注明是哪个测验的回复。 3. 测验完成后,要将工程工作文件夹中的Debug子文件夹删除,同时删除扩展名为*.aps和*.opt(各一个)文件,然后将整个工程工作文件夹用WinRAR或其它压缩工具软件压缩成一个文件,文件名就是工程工作文件夹名。这样,就可以提交了! 4. 本课程测验的开发平台是Visual C+ 6.0,若有疑问请EMail:dingyouhe或致电:13851488503。 - 2 - 测验1 直线 测验内容 (1) 构造图元存取模型和交互框架。 (2) 用Bresenham算法绘制直线,并实现直线段的动态定位过程。 测验打定和说明 (1) 阅读教材中关于直线的生成算法内容。 (2) 打定本次上机所需要的程序。 (3) 创造工作文件夹“学号”。 测验步骤 1 创造工作文件夹 以自己的学号后6位(如20220501,那么为110501)创造一个工作文件夹。 2 启动Visual C+ 6.0 3 创造并运行一个单文档应用程序Gxxxxxx (1) 选择“文件”“新建”菜单,在弹出的“新建”对话框中选择“工程”标签,这时显示出一系列的应用程序工程类型;选择MFC AppWizard(exe)的工程类型;单击按钮(图1.1中的标记3)将工程工作文件夹位置定位在前面创造的工作文件夹(如110501);在工程框中输入工程名Gxxxxxx(留神:xxxxxx为学号的后6位,例如20220501学生应创造的工程名称应为G110501)。如图1.1所示的步骤(图中标记3的位置是其它位置,需要您更改;图中标记4的内容是作为例如创造的工程名Ex_CG8)。 图1.1 创造的步骤次序 留神:作为例如参考,本工程程序名指定为Ex_CG8。 (2) 单击确定按钮,在展现的Step 1对话框中,选择“单个文档”类型,然后单击完成按钮。随后展现“工程信息”对话框,单击确定按钮,回到了Visual C+主开发环境。 (3) 单击编译工具条 上的生成工具按钮“ ”或直接按快捷键F7或打 - 3 - 开“编译”菜单,选取“编译Ex_Hello.exe”命令,系统开头对Ex_Hello举行编译、连接,同时在输出窗口中显示出编译的内容,当展现 表示Ex_CG8.exe可执行文件已经正确无误地生成了。 (4) 单击编译工具条上的运行工具按钮“”或直接按快捷键Ctrl+F5或在“编译”菜单中选取“执行Ex_CG8.exe”,就可以运行刚刚生成的Ex_CG8.exe了。 注:以后只要说“编译和运行”,就是指上述(3)、(4)这两步操作。 4 添加图元存取模型 根本思路: A, 在创造的工程中举行根本图元的绘制,需要将其数据保存下来,保存的最简朴方法就是将图元绘制命令及其参数构成一个字符串,命令和各参数之间用逗号隔开。这样,若将这些字符串保存在字符串集合类型(CStringArray,MFC库的集合类,相当于数组)变量中,就可以读取并解析集合中的图元,然后根据定义图元的不同命令词抉择图元的绘制。 B, 为了能通过文件来保存和读取,因而还需对字符串集合举行文档序列化,并设置其文件的扩展名。 概括步骤如下: (1) 将工程工作区切换到ClassView页面,开展Ex_CG8全体的类节点。 (2) 双击,将在右边的文档窗口中自动开启CCGDemoDoc.h文档,添加以下CStringArray类型成员m_strDataArray,用来存取图元绘制命令及其参数: class CEx_CG8Doc : public CDocument public: CStringArray CEx_CG8Doc(); DECLARE_DYNCREATE(CEx_CG8Doc) m_strDataArray; protected: / create from serialization only 注:只要带有底纹的代码都是自己要添加的代码。 (3) 在左边工程工作区的ClassView页面中,开展CEx_CG8Doc类的全体成员节点,双击节点,将自动定位到Ex_CG8Doc.cpp文档中成员函数Serialize实现代码处,添加图元字符串集合数据的序列化代码: void CEx_CG8Doc:Serialize(CArchive im_strDataArray.GetSize(); i+) ar.WriteString( m_strDataArray.GetAt(i) ); ar.WriteString( / 用换行来作为识别每条命令 - 4 - 6
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号