计算机图形学第五次实验报告

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《计算机图形学》实验报告

实验十一真实感图形

一、实验教学目标与基本要求

初步实现真实感图形,并实践图形的造型与变换等。

二、理论基础

运用几何造型,几何、投影及透视变换、真实感图形效果(消隐、纹理、光照等)有关知识实现。

1. 用给定地形高程数据绘制出地形图;

2. 绘制一(套)房间,参数自定。

三.算法设计与分析

真实感图形绘制过程中,由于投影变换失去了深度信息,往往导致图形的二义性。要消除这类二义性,就必须在绘制时消除被遮挡的不可见的线或面,习惯上称之为消除隐藏线和隐藏面,或简称为消隐,经过消隐得到的投影图称为物体的真实图形。

消隐处理是计算机绘图中一个引人注目的问题,目前已提出多种算法,基本上可以分为两大类:即物体空间方法和图象空间方法。物体空间方法是通过比较物体和物体的相对关系来决定可见与不可见的;而图象空间方法则是根据在图象象素点上各投影点之间的关系来确定可见与否的。用这两类方法就可以消除凸型模型、凹形模型和多个模型同时存在时的隐藏面。

1).消隐算法的实现

1.物体空间的消隐算法

物体空间法是在三维坐标系中,通过分析物体模型间的几何关系,如物体的几何位置、与观察点的相对位置等,来进行隐藏面判断的消隐算法。世界坐标系是描述物体的原始坐标系,物体的世界坐标描述了物体的基本形状。为了更好地观察和描述物体,经常需要对其世界坐标进行平移和旋转,而得到物体的观察坐

标。物体的观察坐标能得到描述物体的更好视角,所以物体空间法通常都是在观察坐标系中进行的。观察坐标系的原点一般即是观察点。物体空间法消隐包括两个基本步骤,即三维坐标变换和选取适当的隐藏面判断算法。

选择合适的观察坐标系不但可以更好地描述物体,而且可以大大简化和降低消隐算法的运算。因此,利用物体空间法进行消隐的第一步往往是将物体所处的坐标系转换为适当的观察坐标系。这需要对物体进行三维旋转和平移变换。

常用的物体空间消隐算法包括平面公式法、径向预排序法、径向排序法、隔离平面法、深度排序

法、光线投射法和区域子分法。其中前三种算法最常用,它们的基础都是背面消隐原理。所谓背面消隐原理,即是相对观察点来说朝向后面的物体表面是不可见的,应被隐藏。下面只对平面公式法作详细介绍,其他方法可参看有关文献。

根据解析几何原理,通过标准的平面方程可以判断给定点是在平面的正面还是背面。平面公式法利用此原理来判断观察点位于物体表面的哪一面,如位于背面一侧,则表面不可见,应被消隐;反之则可见。对物体的任意表面,可将其划分为若干个平面,在根据平面上任意三点的坐标可以求得其平面方程。标准的平面方程为:

Ax+By+Cz+D=0;

其中A、B、C、D 为决定平面的常数。当把一个平面想象成一个凸型多面体时,设观察点坐标为(x,y,z),如果:

①Ax+By+Cz+D=0,则观察点(x,y,z)是该平面表面上的一个点;

②Ax+By+Cz+D>0,则观察点(x,y,z)在凸型多面体内部(称该表面是不可见的或隐藏的);

③Ax+By+Cz+D<0,则观察点(x,y,z)在凸型多面体外表面(称该表面是可见的),应被画出。

通过对物体进行适当旋转和平移后,可将物体变换到以观察点为原点的观察坐标系中,如果在观察坐标系中求得了平面的方程Ax+By+Cz+D=0,将观察点坐标代入上面的判断准则,则可得出如下的简单判据:

①D>0,则平面不可见,应被隐藏;

②D<0,则平面是可见面,应被画出。

2 图像空间的消隐算法

图象空间法基于物体三维模型的二维显示图形来确定物体或表面上的每一点与观察点的远近关系,从而判断哪些表面遮挡了其它表面。为了获得三维物体的二维显示图形,在对物体进行旋转和平移变化后,还需对物体进行透视投影变换。图像空间法包括Z缓冲区法、扫面线法、光线投射法和极值检测法等几种。以下是这几种算法的比较。

①Z缓冲区消隐算法简单、可靠,而且消隐和表现效果很好。但需要的内存容量大,运算复杂,费时;

②扫描线法克服了Z缓冲区法需要分配与屏幕上象素点的个数相同单元的巨大内存这一缺点;

③光线投射法的思想是:考察由视点出发穿过观察屏幕的一象素而射入场景的一条射线,则可确定出场景中与该射线相交的物体。在计算出光线与物体表面的交点之后,离象素最近的交点的所在面片的颜色为该象素的颜色;如果没有交点,说明没有多边形的投影覆盖此象素,用背景色显示它即可。

④极值检测法需与其它消隐算法结合适用,主要用来提高消隐速度。极值检测法通过计算物体表面的显示坐标的极大和极小值来判断这两个表面是否存在重叠。

2)光照模型

计算机图形学中真实感成像包括两部分内容:物体的精确图形表示和场景中光照效果的适当物理描述。光照效果包括光的反射、透明性、表面纹理和阴影。

在下面的讨论中,假定光源为点光源。从某点光源照射到物体表面上一点,再反射出来的光,可以分为三部分:环境光、漫反射光和镜面反射光。为可见物体的光照效果建立模型是一个非常复杂的过程,计算机图形学中光照模型可以由描述物体表面明暗度的物理公式推导出来。为了减少明暗度计算量,通常采用简化的光照计算经验模型。下面介绍一些基本的光照模型。

1 环境光

一个物体表面即使不直接暴露在光源下,只要其周围的物体被照亮,它也可能看得见,称为环境光。环境光没有空间或方向上的特征,在所有方向上和所有

物体表面上投射的环境光数量都恒定不变。

e a a

e a a I I K I I K =------环境光反射强度

环境光的强度

物体表面对环境光的反射系数

由于环境光只能为每个面产生一个平淡的明暗效果,因而在绘制场景时很少仅考虑环境光作用。

2 漫反射

设物体表面在P 点的法矢为N ; 从P 点指向光源的矢量为L ;N 与L 的夹角为θ;若N 与L 的夹角小于0或大

于90度,则光线被物体自身遮挡而照射不到P 点。由

Lambert 余弦定理可得点P 处漫反射光的强度为: cos ,[0,]2d p d p d I I K I K πθθθ=∈---入射光的强度

漫反射系数光线的入射角

如有多个点光源:,1cos n d p i d i i I I K θ==

3 镜面反射

镜面反射情况由Phong 模型给出:

s cos

I n s p s p I I K I V R n n αα=----镜面反射光在观察方向上的光强

点光源的强度与之间的夹角

与物体表面光滑度有关的

一个常数,表面越光滑,越大。

cos n s p s

I I K α= 考虑到受距离影响的衰减,上式重写为:

相关文档
最新文档