计算机图形学实验
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
课程实验报告
课程名称计算机图形学班级1120541 实验日期2014.04 姓名汪智学号41 实验成绩
实验名称绘制金刚石图案
实验目的及要求(1)掌握二维坐标系模式映射方法。
(2)掌握动态内存的分配和释放方法。
(3)掌握二维点类的定义方法。
(4)掌握对话框的创建及调用方法。
(5)掌握对话框的数据交换和数据校验方法。(6)掌握Test工程课程设计框架的创建方法。(7)掌握金刚石图案的设计方法
实
验内容将半径为r的圆周n等份,然后用直线将各等分点隔点相连,形成的图案称为
“金刚石”图案,试编程实现。
算法描述及实验步骤
在Visual C++集成开发环境中,选择File|New,弹出的New对话框,切换到“Projects”标签页。在左边窗口中选择MFC AppWizard [exe],在右边的Projects name处输入工程名“Test”,在Location处选择适当的工程位置,如
D:\Test,如下图所示,点击OK按钮。
New对话框
在MFC AppWizard - Step1对话框中,选中Single document单选按钮,其余保持默认值,如图所示,单击Finish按钮。
MFC AppWizard - Step1对话框
完成上述操作后,Test工程的MFC框架已被生成,出现MFC框架的程序
工作区。如图所示。
MFC框架
单击图所示的工具条上的按钮,就可以直接编译、运行Test工程,结果如
下
(1)设置菜单的ID
在资源视图面板ResourceView上双击Menu,打开IDR_MAINFRAME,修改
菜单项内容,结果如下图
保留子菜单“退出”的ID为ID_APP_EXIT,Prompt为“退出应用程序\n 退出”;设计子菜单“金刚石”的ID为IDM_DIAMOND,Prompt为“绘制图形\n 绘图”;保留子菜单“关于”的ID为ID_APP_ABOUT,Prompt为“开发人员信息\n关于”。如图。请注意,按照MFC的习惯,菜单的ID号要使用大写字符。
(2)添加“绘图”子菜单消息映射函数
子菜单“退出”和“关于”的命令消息处理函数在Test框架建立时AppWizard 已经提供,这里予以保留。下面讲解为子菜单“金刚石”添加命令消息处理函数的方法。选择菜单View|Class Wizard,打开MFC ClassWizard对话框,并自动切换到Message Maps标签页。在Object IDs中选择IDM_DIAMOND,在Class name中选择CTestView类,在Message中选择COMMAND后,单击Add Function 按钮,弹出Add Member Function对话框,保持默认菜单成员函数的名字OnDiamond,单击OK按钮,则在Member function中为子菜单“金刚石”添加了操作函数OnDiamond (),如图1-11所示。该函数成为了CTestView类的成员函数,系统已经自动在TestView.h头文件中添加了函数声明,在TestView.cpp源文件中给出了函数框架。单击Edit Code按钮可以对OnMdraw()
函数进行编辑。
调试过程及实验结果