光线跟踪类图以及应用需求分析.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
光线跟踪类图以及应用需求分析

《UML技术》课程设计题目:光线跟踪系统班级:1420541学号:37姓名:刘创光线跟踪UML类图以及应用需求分析(光线跟踪附图1)1.1需求分析:在计算机图形学中,我们主要研究如何用数学知识去构造矢量图,通过某种可编程语言实现这种算法,并通过显示器显示出图象。如何更好的模拟出真实的自然世界,比如自然光照射到我们周边的景物上,我们会用眼睛感受到太阳光的反射、折射等;我们会感受到太阳光的温暖,尽管我们不能模拟出触觉,但是我们能够应用物理知识模拟出辐射度等……生成一幅比较真实的图象,最简单也是最好的方法就是光线跟踪算法。光线跟踪也有很多的缺点:光线跟踪递归所带来的效率极低的窘况;光线跟踪中会出现非常严重的边缘锯齿现象,这需要我们对每一个像素点采取多条光线采样,进而减小锯齿,这无疑是成倍增加了运行时间的复杂度;目前GPU硬件难以实现实时的光线跟踪等。尽管如此,我们依然无法否认光线跟踪的很多优点:我们很容易地通过光线跟踪实现阴影效果,原理非常简单易懂;其次,我们对于那些透明物体如水、玻璃等可以像计算反射光线一样去处理折射光线,进而实现折射的效果,增加了图像的真实性;场景中的物体在与光线逐次求交的过程中,我们就已经实现了深度测试(ZBuffer)或者说画家算法;光线跟踪中我们不需要通过特殊处理(比如说透视矩阵的转换等)就已经达到了透视效果。光线跟踪中一个非常重要的算法就是如何尽快找到光线与场景中的某一个物体在时间上先相交。由于UML是面向对象的程序设计语言,在此不讨论求交算法,只讨论我们场景中都有哪些物体,并通过UML分析把这些相关的类、接口等抽象出来,使用StrUML工具绘制出其相关的类图。关键词:光线跟踪、计算机图形学、UML面向对象的程序设计语言、反射、折射、锯齿、采样、GPU硬件、深度测试(ZBuffer)、画家算法、相交、类图1.2程序中的类以及程序效果截图:(光线跟踪附图2)1.3光线跟踪中所涉及到的类用表格的形式列出来序号类类属性函数备注RayOrigion:原点Direction:方向Ray(Origion,Direction)构造光线函数等光线跟踪中的光线类Vector3X:三维坐标系下的x分量Y: 三维坐标系下的y分量Z: 三维坐标系下的z分量构造三维向量的若干函数等三维向量类FLOATRGBR:颜色中的红色分量G:颜色中的绿色分量B:颜色中的蓝色分量构造像素点颜色的函数等像素点的颜色类MaterialEmission:自发光系数Diffuse:漫反射系数Specular:高光系数Reflection:反射系数构造材质函数等材质类MaterialUVU:纹理u值V:纹理v值构造含有纹理映射的材质函数等纹理材质类TextureDataBmpbmpData:bmp纹理数据读取存储二维数组构造纹理信息函数等纹理数据类ObjectsMaterial:物体的材质属性bIsLight:物体本身是否为光源构造场景中的物体函数等场景中的物体集合类SceneObjects:场景中的所有物体构造场景的若干函数场景类IntersectResultObjects:相交的物体元素T:相交的时间Position:相交位置Normal:相交点的法线光线与物体求交后的结果类RayTraceScene:光线递归所涉及到的所有场景构造光线递归总函数等光线递归类SphereCenter:球体中心Radius:球体半径Material:球体材质构造球体、求交等函数球体类TriangleV1,V2,V3:三角形三个顶点Material:三角形材质构造三角形、求交等函数三角形类PlaneNormal:平面法线D:平面距离构造平面、求交等函数平面类FloorPlaneNormal:平面法线D:平面距离构造平面、求交等函数特殊平面类CylinderCenter:柱体中心Radius:柱体底面半径Height:柱体高度Material:柱体材质构造柱体、求交等函数柱体类ConeCenter:锥体中心Radius:锥体底面半径Height:锥体高度Material:椎体材质构造锥体、求交等函数锥体类CompoundCenter:组合体中心Length:组合体长度Width:组合体宽度Height:组合体高度Material:组合体材质构造组合体、求交等函数组合体类相关UML类图2.1光线跟踪程序设计整体类图框架浏览:(光线跟踪附图3)(注:由于类图框架比较大,这里采用两次截屏,以下同)2.2分解图:接口关系类图接口关系中,我们将Objects作为接口类,该函数主要声明一个求交的纯虚函数,并由3D场景中的物体:Sphere、Triangle、Plane、Cylinder、Cone、Compound等实现该求交函数接口。(光线跟踪附图4)依赖关系类图凡属于局部变量而又是用

文档评论(0)

almm118 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档