图形学实验五光照球实验.doc

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

课程名称 计算机图形学 班级 1320541 实验日期 2015年6月11日星期四 姓 名 刘创 学号 37 实验成绩 实验名称 实验五 光照球 实 验 目 的 及 要 求 理解球边表和面表算法 理解的算法 理解基于MFC 利用mfc绘制光照球球 算 法 描 述 及 实 验 步 骤 部分重要代码截图: (用适当的形式表达算法设计思想与算法实现步骤) 调 试 过 程 及 实 验 结 果 实验过程中没有出现太大的问题 实验结果展示如下: 双光源光照地理球 (详细记录在调试过程中出现的问题及解决方法。记录实验运行结果) 总 结 通过本次实验,了解到了mfc的最基本知识,发现自己学习mfc任重而道远,在前行的路上还有很多学习的地方。 实践是检验真理的唯一标准 动手能力需要再次提高 算法思想要与时俱进,要多学习算法 (对实验结果进行分析,实验心得体会及改进意见) 附 录 附 录 附 录 附 录 附 录 附 录 附 录 附 录 CDrawBallView::CDrawBallView() : N(NULL) , F(NULL), N1(0) , N2(0) , Alpha(0) , Beta(0) , V(NULL) { // TODO: 在此处添加构造代码 V = NULL; F = NULL; R = 1000.0, d = 800.0, Phi = 90.0, Theta = 0.0;//视点位于正前方 Near = 200.0, Far = 1200.0;//近剪切面与远剪切面 LightNum = 2;//光源个数 pLight = new CLighting(LightNum);//一维光源动态数组 pLight-Light[0].SetPosition(-800, 800, 800);//设置光源位置坐标 pLight-Light[1].SetPosition(800, 800, 800);//设置光源位置坐标 for (int i = 0; iLightNum; i++) { pLight-Light[i].L_Diffuse = CRGB(1.0, 1.0, 1.0);//光源的漫反射颜色 pLight-Light[i].L_Specular = CRGB(1.0, 1.0, 1.0);//光源镜面高光颜色 pLight-Light[i].L_C0 = 1.0;//常数衰减系数 pLight-Light[i].L_C1 = 0.0000001;//线性衰减系数 pLight-Light[i].L_C2 = 0//二次衰减系数 pLight-Light[i].L_OnOff = TRUE;//光源开启 } pMaterial = new CMaterial;//一维材质动态数组 pMaterial-SetAmbient(CRGB(0.175, 0.012, 0.012));//材质对环境光光的反射率 pMaterial-SetDiffuse(CRGB(0.614, 0.041, 0.041));//材质对漫反射光的反射率 pMaterial-SetSpecular(CRGB(1.0, 1.0, 1.0));//材质对镜面反射光的反射率 pMaterial-SetEmit(CRGB(0.2, 0.2, 0.4));//材质自身发散的颜色 pMaterial-SetExp(30);//高光指数 } // CDrawBallView 绘制 void CDrawBallView::OnDraw(CDC* pDC) { CDrawBallDoc* pDoc = GetDocument(); ASSERT_VALID(pDoc); if (!pDoc) return; // TODO: 在此处为本机数据添加绘制代 pDC = GetDC(); CRect rect; GetClientRect(rect); //pDC-Rectangle(0, 0, rect.Width(), rect.Height()); //pDC-FillSolidRect(rect, RGB(0, 0, 0)); pDC-SetTextColor(RGB(255, 0, 0)); pDC-TextOutW(200, 200, _T(光源位置为:X:-800,Y:800,Z:800)); pDC-TextOutW(920, 200, _T(光源位置为:X:800,Y:800,Z:800

您可能关注的文档

文档评论(0)

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

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

1亿VIP精品文档

相关文档