第9章 真实感图形生成13页
计算机图形学实验指导书(vc++版)
实验指导书刘文涛2013目录第一章图形学实验环境和要求 (4)1.1 VC++实验环境 (4)1.1.1 基本环境 (4)1.1.1 开发图形程序的一般流程 (7)1.1.3 基本绘图函数介绍 (11)1.2 OpenGL (22)1.2.1 OpenGL介绍 (22)1.2.2 OpenGL开发环境 (24)1.2.3 OpenGL函数 (24)1.2.4 回调函数 (25)1.2.4 一个典型OpenGL例程 (26)1.3 实验要求 (29)1.3.1 实验内容 (29)1.3.2 实验方法 (29)1.3.3 实验效果 (30)第二章直线生成算法 (30)2.1 实验原理 (30)2.1.1 DDA算法 (30)2.1.2 Bresenham算法 (30)2.2 实验内容 (30)2.3 参考示例程序 (30)第三章圆和椭圆生成算法 (32)3.1 实验原理 (32)3.2 实验内容 (32)3.3 参考示例程序1 (32)3.4 参考示例程序2 (33)第四章裁剪算法 (35)4.1 实验原理 (35)4.2 实验内容 (35)4.3 示例程序 (35)4.3.1 参考例子1 (35)4.3.2参考例子2 (38)第五章二维变换 (40)5.1 实验原理 (40)5.2 实验内容 (40)5.3 示例程序 (40)5.3.1参考例子1 (40)第六章三维变换 (44)6.1 实验原理: (44)6.2 实验内容 (45)6.3示例程序 (45)第七章填充算法 (47)7.1 实验原理: (47)7.2 实验内容 (47)7.3示例程序 (47)第八章曲线曲面 (50)8.1 实验原理 (50)8.2 实验内容 (50)8.3示例程序 (51)8.3.1 参考例子(1) (51)8.3.2 参考例子(2) (52)8.3.3 参考例子(3) (54)8.3.4 参考例子(4) (56)第九章真实感图形绘制 (59)9.1 实验原理 (59)9.2 实验内容 (59)9.3示例程序 (59)9.3.1参考例子(1) (59)9.3.2参考例子(2) (61)9.3.3参考例子(3) (63)第十章动画 (66)10.1 实验原理 (66)10.2 实验内容 (66)10.3示例程序 (66)10.3.1 参考例子 (66)参考文献: (72)第一章图形学实验基础1.1 VC++实验环境1.1.1 基本环境Microsoft Visual C++ 6.0 是微软推出的功能强大的可视化C/C++语言编译器,运行在Windows 9x/2000/NT等平台上,可以建立32位应用程序。
第1章 绪论
室博士论文——sketchpad:ManMachine Graphical Communication System) 1964年:IBM2250显示器——第一代刷新式随机扫 描图形终端; 1970年——至今:光栅图形显示器的诞生。
2. 交互式绘图
(Interactive Draft)
3. 计算机辅助设计/制造
(CAD/M,Computer Aided Design/Manufacturing)
4. 艺术与娱乐
(Art & Amusement)
5. 模拟与仿真
(Emulation & Simulation)
6. 计算机辅助教学
研究的对象是图形。
3. 图形的定义
从客观世界中抽象出来的带有颜色 和形状信息的图和形。
1.1 计算机图形学的概念及研究内容
4. 图形分类
1)线条式——用线段来表现图形。适合于 反映客观实体的内部结构,因而适合表示各类 如工程技术中的结构图。如,机械零件结构图、 地形图、土木设计中的房屋结构图、平面图布 置图和剖面图。
1.2 计算机图形学的发展
2)输入设备: 光笔、鼠标、操纵杆、跟踪球、输入板、坐标数字化 仪、触摸屏。
1.2 计算机图形学的发展
2. 软件的发展
1)计算机图形学软件种类(3类) (1类)——用现有的高级程序设计语言写成的 软件包。
用户使用时按照相应计算机语言的规定调 用所需要的子程序生成各种图形。较为广泛使 用的图形标准化程序包:GKS、PHIGS、GL。 便于移植但执、行速度效率较低。
1.1 计算机图形学的概念及研究内容
图像处理——则是用摄像或扫描仪等观测手段将客 观世界中原来存在的景物摄制成数字化图像,对图 像进行分析和处理,理解图像的内涵,进而从图像 中提取所关注的景物的二维和三维信息。如:卫星 遥感中的资源探测、气象预报中的云图和海图处理、 人体的CT扫描、工业中的射线探伤、进项图谱分析 等。
第九章简单光照明模型
IB
yB y3
y1 y1
I3
y3 yB y3 y1
I1
I3 V3
图9.9 采用双线性插值计算P点的光亮度
其中yi(i=1,2,3,A,B)为各点投影到屏幕之后的y轴坐标。
IP
xB xB
xP xA
IA
xP xB
xA xA
IB
其中xi(i=A,B,P)为各点投影到屏幕之后的x轴坐标。
多边形各顶点光亮度计算
光亮度线性插值
V1
A I1 B
I2 V2
P (Ip)
I3
扫描线
V3
图9.9 采用双线性插值计算P点的光亮度
9.2.1 Gouraud明暗处理技术
Computer
IA
yA y1 y2 y1
I2
y2 yA y2 y1
I1
V1 A I1 B
I2 V2
P (Ip)
Graphics
确定场景中 的所有可见 面,这需要 使用隐藏面 消除算法将 视域之外或 被其他物体 遮挡的不可 见面消去。
计算场 景中可 见面的 颜色。
9.1.1 光源
❖ 光源称为发光体 ❖ 反射表面(如房屋的墙壁)则称为反射光源
光源
反射面
Computer Graphics
图9.1 通常在一个不透明且不发光的物体表面所观察到的光线是 其反射光,它 由光源与其他物体表面的反射光所共同产生
Computer Graphics
❖ 物体表面上任一点射向视点的光亮度I应为环境光、漫反射光和镜面
反射光的总和
I ka I pa kd I pd cosi ks I ps cosn
❖ 多个光源时
I ka I pa (kd I pd cos i ks I ps cosn )
计算机图形学ppt(共49张PPT)
过程动画技术
过程动画的概念
通过定义物体的运动规律或过程,由计算机自动生成动画。
过程动画的实现方法
基于物理模拟、基于过程建模、基于行为建模等。
过程动画的应用场景
自然现象的模拟(如风、雨、雪)、物体的变形和破碎效果等。
基于物理的动画技术
基于物理的动画概念
利用物理引擎模拟现实世界中的物理现象,生成逼真的动画效果 。
表面模型(Surface Model)
用多边形面片逼近三维物体的表面。
实体模型(Solid Model)
定义三维物体的内部和外部,表示物体的实体。
光线追踪(Ray Tracing)
模拟光线在三维场景中的传播,生成真实感图形。
三维图形的变换与裁剪
几何变换(Geometric Trans…
包括平移、旋转、缩放等变换,用于改变三维物体的位置和形状。
如中点画圆算法,利用圆 的八对称性,通过计算决 策参数来生成圆。
多边形的生成算法
如扫描线填充算法,通过 扫描多边形并计算交点来 生成多边形。
二维图形的变换与裁剪
二维图形的变换
包括平移(Translation)、旋转(Rotation)、 缩放(Scaling)等变换,可以通过变换矩阵来实 现。
二维图形的裁剪
Screen-Space Methods
利用屏幕空间信息进行半透明 物体的渲染,如屏幕空间环境 光遮蔽(SSAO)和屏幕空间 反射(SSR)。
06
计算机动画技术
Chapter
计算机动画概述
计算机动画的定义
01
通过计算机生成连续的动态图像,实现虚拟场景和角色的动态
表现。
计算机动画的应用领域
02
影视特效、游戏设计、虚拟现实、工业设计等。
计算机图形学复习概要
第一章绪论1.计算机图形学这一术语最早是在_1962_年首次被提出,从而确立了计算机图形学的学科地位.2.计算机图形学的应用范围包括(A,B,C,D,E,F).A.计算机艺术B.计算机辅助设计与制造C.医疗诊断D.计算机动画E.算机辅助教学F.办公自动化和电子出版技术3.计算机图形学研究的内容是什么?答:计算机图形学(Computer Graphics)是研究怎样用数字计算机生成、处理和显示图形的一门学科,是研究用计算机将由概念或数学描述所表示的物体(而不是实物)图像进行处理和显示的过程,是在计算机的帮助下生成图形图像的一门艺术。
4.计算机图形学处理的图形分为哪两种?答:一类是线条式,它用线段来表现图形。
这种图形容易反映客观实体的内部结构,因而适合表示各类工程技术中的结构图。
如机械设计中的零件结构图、土木没计中的房屋结构图及各种曲线图等等;另一类是具有面模型、色彩、浓淡和明暗层次效果的、有真实感的图形,这种图形与我们用照相机拍摄的照片相似。
它适合于表现客观实体的外形或外貌,如汽车、飞机等的外形设计以及各种艺术品造型设计等。
5.试举例说明你所见到过的计算机图形学的应用实例.答:如医疗图像诊断,计算机动画等。
第二章计算机图形系统1.图形系统的基本功能包括:计算、存储、输入、输出、对话等五方面的功能。
2.图形输出设备主要包括:显示器、绘图仪、打印机等.3.计算机图像的输入设备包括( A,B,C,D,E,F,G,H).A.键盘B.鼠标C.跟踪球D.数字化仪E.图像扫描仪F.图像扫描仪G.触摸屏H.声音系统和视觉系统4.名词解释:分辨率场频行频分辨率:分辨率就是屏幕图像的密度。
我们可以把屏幕想象成是一个大型的棋盘,而分辨率的表示方式就是每一条水平线上面的点的数日乘上水平线的数目。
分辨率越高,屏幕上所能呈现的图像也就越精细。
场频:场频又称为“垂直扫描频率”,也就是屏幕的刷新频率。
指每秒钟屏幕刷新的次数,通常以赫兹(Hz)为单位。
计算机图形学真实感图形绘制
41
光线跟踪算法步骤
从视点出发,确定穿过每个像素中心的光线路径, 然后,沿这束光线累计光强,并将最终值赋给相应 像素。
对于每一像素光线,对场景中的所有物体表面进行 测试以确定其是否与该光线相交,并计算出交点的 深度,深度最大(z值)的交点即为该像素对应的可见
点。然后,继续考察通过该可见点的从属光线(
pname取值 GL_LIGHT_MODEL_AMBIENT
默认值 (0.2, 0.2, 0.2, 1.0)
GL_LIGHT_MODEL_LOCAL_VIEWE GL_FALSE
R
GL_LIGHT_MODEL_TWO_SIDE
GL_FALSE
GL_LIGHT_MODEL_COLOR_CONTR GL_SINGLE_COLOR OL
P点对环境光的反射强度为
图1 环境光的反射
8
漫反射光(Diffuse Reflection)
一个粗糙的、无光泽的表面呈现为漫反射。
特点:光源来自一个方向,反射光均匀地射向各个方向 。
由Lambert余弦定理可 得点P处漫反射光的强度为:
图2 漫反射
9
漫反射光(Diffuse Reflection)
含义 整个场景的环境光成分 如何计算镜面反射角
单面光照还是双面光照 镜面反射颜色是否独立于环境颜 色、散射颜色
52
OpenGL材质属性
在OpenGL中,下面的函数用于指定材质属性
void glMaterial{if} (GLenum face, GLenum pname, TYPE param);
43
光线跟踪算法步骤
图13 光线跟踪及光线跟踪树
44
光线跟踪算法步骤
《计算机图形学》题集
《计算机图形学》题集一、选择题(每题2分,共20分)1.计算机图形学主要研究的是:A. 计算机硬件的设计B. 计算机软件的开发C. 图像的生成、处理与显示D. 计算机网络技术2.下列哪个不是计算机图形学的应用领域?A. 游戏开发B. 医学影像处理C. 文字编辑D. 三维动画制作3.在计算机图形学中,像素(Pixel)是:A. 图像的最小单位B. 显示器的大小C. 图像的分辨率D. 图像的颜色深度4.下列哪个是光栅图形显示器的特点?A. 直接使用矢量数据表示图像B. 图像由像素阵列组成C. 分辨率固定不变D. 不适用于动态图像显示5.在三维图形变换中,平移变换不会改变物体的:A. 形状B. 大小C. 方向D. 位置6.下列哪个算法常用于三维图形的消隐处理?A. 光线追踪算法B. Z-Buffer算法C. 纹理映射算法D. 反走样算法7.在计算机图形学中,下列哪个术语用于描述物体表面的明暗程度?A. 色彩B. 光照模型C. 纹理D. 透明度8.下列哪个不是计算机图形学中的基本图形生成算法?A. 中点画线算法B. Bresenham画圆算法C. 扫描线填充算法D. Cohen-Sutherland线段裁剪算法9.在计算机图形学中,下列哪个概念用于描述物体的三维形状?A. 像素B. 几何模型C. 色彩模型D. 光照模型10.下列哪个不是真实感图形生成的基本步骤?A. 几何建模B. 光照模型计算C. 纹理映射D. 数据压缩二、填空题(每题2分,共14分)1.计算机图形学中的“图形”主要分为两大类:和。
2.在三维图形变换中,旋转变换可以使用______矩阵来实现。
3.在计算机图形学中,______是指使用数学方法来模拟真实世界中光线与物体表面的相互作用。
4.在进行三维图形的消隐处理时,______算法是一种常用的方法,它通过维护一个深度缓冲区来实现。
5.在计算机图形学中,______是一种常用的图像滤波技术,可以用于图像的平滑处理。
计算机图形学主要知识点归纳
计算机图形学主要知识点归纳第一章计算机图形学是:研究怎么利用计算机来显示、生成和处理图形的原理、方法和技术的一门学科。
计算机图形学的研究对象是图形。
构成图形的要素有两类:一类是几何要素(刻画图形状的点、线、面、体),另一类是非几何要素(反映物体表面属性或材质的明暗、灰度、色彩).。
计算机表示图和形常有两种方法:点阵法和参数法。
软件的标准:SGI等公司开发的OpenGL,微软开发的Direct X,Adobe的Postscript 等。
计算机辅助设计与制造(CAD/CAM)计算机图形系统可以定义为计算机硬件、图形输入输出设备、计算机系统软件和图形软件的集合。
交互式计算机图形系统应具有计算、存储、对话、输入和输出等五方面的功能。
真实感图形的生成一般须经历场景造型、取景变换、视域裁剪、消除隐藏面及可见面光亮度计算等步骤。
虚拟现实系统又称虚拟现实环境,是指由计算机生成的一个实时三维空间。
用户可以在其“自由地”运动,随意观察周围的景物,并可通过一些特殊的设备与虚拟物体进行交互操作。
科学计算可视化是指运用计算机图形学和图像处理技术,将科学计算过程及计算结果的数据转换为图形及图像在屏幕上显示出来并进行交互处理的理论、方法和技术。
第二章鼠标器是用来产生相对位置。
鼠标器按键数分为两种:MS型鼠标(双按键鼠标)和PC型鼠标(三按键鼠标)。
触摸屏也叫触摸板,分为:光学的红外线式触摸屏、电子的电阻式触摸屏和电容式触摸屏、声音的声波式触摸屏。
数据手套是由一系列检测手和手指运动的传感器的构成。
来自手套的输入可以用来给虚拟场景的对象定位或操纵该场景。
显示设备的另一个重要组成部分的是显示控制器。
它是控制显示器件和图形处理、转换、信号传输的硬件部分,主要完成CRT的同步控制、刷新存储器的寻址、光标控制以及图形处理等功能。
阴极射线管CRT由电子枪、偏转系统及荧光屏3个基本部分组成。
电子枪的主要功能是产生一个沿管轴(Z轴)方向前进的高速的细电子束(轰击荧光屏)。
李涛《Photoshop》中文版案例教程第九章PPT课件
第九章 海报设计
9.2 海报设计经典案例欣赏
第九章 海报设计
9.2 海报设计经典案例欣赏
第九章 海报设计
9.2 海报设计经典案例欣赏
第九章 海报设计
9.2 海报设计经典案例欣赏
第九章 海报设计
9.2 海报设计经典案例欣赏
第九章 海报设计
9.2 海报设计经典案例欣赏
第九章 海报设计
9.2 海报设计经典案例欣赏
第九章 海报设计
海报是一种信息传递艺术,是一种大众化的宣传工具。海报设计必须有一 定的号召力与艺术感染力,要调动形象、色彩、构图、形式感等因素形成强烈 的视觉效果;它的画面应有较强的视觉中心,应力求新颖、单纯,还必须具有 独特的艺术风格和设关文本内容
标题添加
点击此处输入相 关文本内容
第九章 海报设计
9.2 海报设计经典案例欣赏
第九章 海报设计
——游戏海报设计
素材与源文件\Chapter9\9.3 游戏海报设计
第九章 海报设计
案例制作步骤:
——游戏海报设计
9.4 知识与技能梳理
海报作为大众的宣传手段,运用文字、色彩构图等多种元素,力求新 颖独特,使人一目了然,在潜移默化中传递信息。因此,海报设计必须要 强调形象、色彩、构图和形式等因素,从而形成强烈的视觉效果。海报的 画面应有较强的视觉中心,应力求新颖、单纯,还必须具有独特的艺术风 格和设计特点。
第九章 海报设计
9.1 海报设计的基础知识——海报设计的创意 立意要好 明确的主题 视觉吸引力 艺术与个性 灵巧的构思
第九章 海报设计
9.2 海报设计经典案例欣赏
第九章 海报设计
9.2 海报设计经典案例欣赏
第九章 海报设计
第九章 使用MFC实现真实感图形绘制
第九章使用MFC实现真实感图形绘制真实感图形绘制是计算机图形学的一个重要组成部分。
它综合利用数学、物理学、计算机科学和其他学科知识在计算机图形设备上生成象彩色照片那样的真实感图形。
要用计算机图形设备绘制场景的真实感图形,就必须首先在计算机中建立该场景的模型,用这个模型来反映场景的特点和属性。
这一模型通常是由一批几何数据及数据之间的拓扑关系来表示的,这就是造型技术,它是真实感图形绘制技术的重要组成部分。
有了三维场景的模型,并给定了观察点和观察方向以后,就可以通过几何变换和投影变换在屏幕上显示该三维场景的二维图像。
为了使二维图像具有立体感,并尽可能逼真地显示出该物体在现实世界中被观察到的形象,就需要运用适当的光照模型,来模拟场景在现实世界中受到各种光源照射时的效果,这就是真实感图形的画面绘制技术,也就是真实感图形的生成技术。
用计算机在图形设备上生成连续色调的真实感图形大致可以分为以下四步:第一步,用数学方法建立所需三维场景的几何描述,并将它们输入至计算机。
这部分工作可由三维立体造型或曲面造型系统来完成。
场景的几何描述直接影响了图形的复杂性和图形绘制的计算耗费,因此选择合理的、有效的数据表示和输入手段是非常重要的。
第二步,将三维几何描述转换为二维投影图。
这可以通过对场景的投影变换来完成。
第三步,确定场景中的所有可见面,这需要使用隐藏面消除算法将被其他物体遮挡的不可见面消去。
第四步,计算场景中可见面的颜色,严格地说,就是根据基于光学物理的光照明模型计算可见面投射到观察者眼中的光亮度大小和色彩分量,并将它转换成适合图形设备的颜色值,从而确定投影画面上每一象素的颜色,最终生成图形。
前三步的相关知识在前面已经进行了介绍,本章将重点介绍如何通过MFC 编程的方式,利用光照模型计算场景中可见面的光亮度和颜色,并绘制最终的真实感图形。
实际上,现在OpenGL和DirectX等图形函数库提供了很多支持真实感图形绘制的函数,使用它们可以更轻松的完成真实感图形绘制。
真实感图形显示的基本流程和坐标系
真实感图形显示的基本流程和坐标系下载温馨提示:该文档是我店铺精心编制而成,希望大家下载以后,能够帮助大家解决实际的问题。
文档下载后可定制随意修改,请根据实际需要进行相应的调整和使用,谢谢!并且,本店铺为大家提供各种各样类型的实用资料,如教育随笔、日记赏析、句子摘抄、古诗大全、经典美文、话题作文、工作总结、词语解析、文案摘录、其他资料等等,如想了解不同资料格式和写法,敬请关注!Download tips: This document is carefully compiled by theeditor. I hope that after you download them,they can help yousolve practical problems. The document can be customized andmodified after downloading,please adjust and use it according toactual needs, thank you!In addition, our shop provides you with various types ofpractical materials,such as educational essays, diaryappreciation,sentence excerpts,ancient poems,classic articles,topic composition,work summary,word parsing,copy excerpts,other materials and so on,want to know different data formats andwriting methods,please pay attention!真实感图形显示是计算机图形学中的一个重要领域,它旨在通过计算机生成具有真实感的图形图像。
计算机图形学报告
. . . . .. . 优质资料 .. 计算机图形学 (2017年秋季学期)实验 报 告系别:计算机科学与技术 班级: : 学号:实验名称:2-真实感图形绘制2020-11-132/3《计算机图形学》实验报告实验名称真实感图形绘制 实验序号 2实验日期 2017.12.13 实验人 一、实验目的、要求与环境1.目的:通过实验,学生应掌握通过计算机程序进行真实感图形绘制的基本原理,特别是对三维显示对象进行纹理映射的基本方法,将理论和实际应用切实结合起来。
2.要求:对一个三维立方体进行旋转,对其6个不同的面进行6个不同图像的纹理映射,并进行投影变换与显示,分析增强后的视觉效果,提交实验报告。
3.环境:Windows 7操作系统Microsoft Visual Studio 2005OpenGL 函数库4. 自带位图文件(换成你自己的图像文件):总成绩:评语:日期:2020-11-1311/12二、实验容与步骤1. 准备相关图像文件。
2. 进行立方体各面图像与旋转速度的大体设计。
3.在Windows 7 操作系统上,打开Microsoft Visual Studio 2005,编写相关程序,完成程序主体框架结构。
4.编写六面体显示相关的程序代码。
5.编写六面体旋转相关的程序代码。
6.编写深度检测相关的程序代码。
7. 编写纹理载入功能的相关程序代码。
8. 编写纹理参数定义功能的相关程序代码。
9. 编写纹理映射功能的相关程序代码。
10.对程序进行相关调试,修改程序,去除其中的BUG 。
11. 观察纹理映射后的六面体的旋转显示,与预想的结果进行对比,修改相关程序参数。
12.截屏,保留实验结果,进行实验结果分析,并撰写实验报告。
2020-11-13 2/32020-11-13 11/12四、编译过程截图五、实验结果与分析(下面是一个例子,换上你自己的图)实验结果:实验分析程序通过glBindTexture(GL_TEXTURE_2D, lastTextureID);语句,完成了恢复之2020-11-13 2/32020-11-13 11/122020-11-13 2/32020-11-13 11/122020-11-13 2/3。
图像空间的消隐算法Zbuffer扫描线PPT课件
深度缓存全置为最小Z值
for(每一个多边形)
{ 扫描转换该多边形
for(该多边形所覆盖的每个象素(x,y) )
{ 计算该多边形在该象素的深度值Z(x,y);
if(Z(x,y)大于Z缓存在(x,y)的值)
{ 把Z(x,y)存入Z缓存中(x,y)处
把多边形在(x,y)处的颜色值存入帧缓存的(x,y)处
} 202}1/6/8
3. 求直线与相应多边形的交。若无交点,转4。
否则,交点在线段内部或外部。若交点在
线段内部,交点将线段分成两段,与视点
同侧的一段不被遮挡,另一段在视点异侧,
2021/6/8
转4再判;若交点在线段外部,转4。
6 / 41
第6页/共41页
第九章:真实感图形学
4. 求所剩线段(可能被遮挡部分)的投影与多边形边界 投影的所有交点,并根据交点在原直线参数方程中 的参数值求出Z值(即深度)。若无交点,转5。
④ Q在P之前
如果“P在Q之前”测试失败,应该进行“Q在P之前”的逆测试,即把所有 Q的顶点代入P的方程检验与代入视点得到的符号是否相同,如果测试通过 应 该 把 P, Q 在 深 度 优 先 级 表 中 的 顺 序 颠 倒 过 来 。
2021/6/8
第14页/共41页
14 / 41
第九章:真实感图形学
使用光栅图形显示器绘制物体的真实图形时,必须解决消除隐藏面的问题。
1. 画家算法(列表优先算法)
先把屏幕置成背景色,再把物体的各个面按其离视点的远近进行排序,离 视点远者(Z最小)在表头,离视点近者(Z最大)在表尾,排序结果存在一张深 度优先级表中。从表头到表尾逐个取出多边形投影到屏幕并显示多边形包 含的实心区域。由于后显示的图形取代先显示的画面,而后显示的图形所 代表的面离视点更近,所以由远及近的绘制各面,就相当于消除隐藏面。 这与油画作家作画的过程类似,先画远景,再画中景,最后画近景。
课程简介内容格式
计算机图形学课程简介课程名称:计算机图形学学时36(理论26/上机10)基本面向:计算机类的本、专科专业教材:刁宝成等,《计算机图形学》,高等教育出版社,1999。
参考书:1、孙家广,计算机图形学(第三版),清华大学出版社,1999。
2、唐泽圣,计算机图形学基础,清华大学出版社,19953、陈传波、陆枫,计算机图形学基础,电子工业出版社,20024、倪明田等,计算机图形学,北京大学出版社,19995、唐荣锡,计算机图形学教程(修订版),科学出版社,20006、吴海平等,《OpenGL图形程序设计及应用环境》,国防科技大学出版社,1999。
7、计算机辅助设计与图形学学报8、中国图形图像学报课程负责人:师资队伍(20):课程说明(60):计算机图形学是研究怎样利用计算机来显示、生成和处理图形的原理、方法和技术的一门学科。
通过本课程的学习,使学生了解图形系统的框架及其涉及的软件、硬件技术;掌握图形的表示与数据结构,基本图形生成算法,图形的二维、三维变换及观察,三维几何造型,真实感图形绘制方法;对与图形相关的应用及当前的研究热点有一个初步认识;具有一定实践体会和OpenGL图形程序设计及应用能力。
内容简介(1000):第一章绪论计算机图形的基本概念;计算机图形学与数字图象处理、计算机视觉的关系;计算机图形学的发展与应用。
本章知识点:计算机图形的基本概念;计算机图形学的发展与应用。
第2章图形设备介绍图形输入设备、图形显示、图形绘制设备。
本章知识点:阴极射线管CRT;光栅扫描的图形显示器显示图形的过程。
高性能图形显示卡。
第3章交互式绘图技术介绍基本的交互式绘图技术。
本章知识点:如何设计一个好的用户接口;常用的输入模式:请求(request)、采样(sample)、事件(event)及其组合形式。
基本交互绘图技术:回显、约束、网格、引力域、橡皮筋技术、草拟技术、拖动、旋转、形变等。
第4章造型技术讲述如何在计算机中建立恰当的模型表示不同图形对象;如何组织图形对象的描述数据以使存储这些数据所要的空间最省,检索、处理这些数据的速度较快。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
漫反射及具体光源的照明
1.环境光 在多数实际环境中,存在由于许 多物体表面多次反射而产生的均匀的 照明光线,这就是环境光线。环境光 线的存在使物体得到漫射照明. 亮度计算如下:
I=Ia·κa
其中I是可见表面的亮度,Ia是环 境光线的总亮度,κa是物体表面对环 境光线的反射系数,它在0到1之间. 2.漫反射 具体光源在物体表面可以引起漫反 射和镜面反射。漫反射是指来自具体光 源的能量到达表面上的某一点后,就均 匀地向各个方向散射出去,使得观察者 从不同角度观察时,这一点呈现的亮度 是相同的。 通常不光滑的粗糙表面总是呈现出 漫反射的效果
三色学说
三色学说:某一种波长的光可以通过三种不同 波长的光混合而复现出来,且红(R)、绿(G)、 蓝(B)三种单色光可以作为基本的颜色-原色, 把这三种光按照不同的比例混合就能准确的复 现其它任何波长的光,而它们等量混合就可以 产生白光。 三色学说是我们真实感图形学的生理视觉基础, 我们根据三色学说用RGB来定义我们的颜色,三 色学说是我们颜色视觉中最基础、最根本的理 论。
物体的线框图 经消隐处理后的图形
消隐算法分类
按其实现方式分为:
图象空间消隐算法 图象空间(屏幕坐标系)消隐算法以屏幕像素为 采样单位,确定投影于每一个像素的可见景物 表面区域,并将其颜色作为该像素的显示颜色 景物空间消隐算法 直接在景物(观察坐标系)中确定视点不可见的 表面区域,并将它们表达成同原表面一致的数 据结构
像素 一条由象素点射入场景的视线
光线投射算法可以看做是深度缓冲器算法 的一种变形。在深度缓冲器算法,每次处理一 个表面并对表面上的每个投影点计算深度值。 计算出来的值与以前保存的深度进行比较,从 而确定每个像素所对应的可见表面。在光线投 射算法中,每次处理一个像素,并沿光线的投 射路径计算出该像素所对应的所有表面的深度 值。 光线跟踪技术通过追踪多条光线在场景中的 路径,以得到多个物体表面所产生的反射和折 射效果。而在光线投射中,跟踪的光线仅从每 个像素到最近的物体为止。
扫描线算法
扫描线算法是图象空间算法, 它建立图象是通过每次处理一条 扫描线来完成的。这个算法是第 四章讨论的多边形填充的扫描线 算法的推广。在多边形填充的扫 描线算法中,只是对一个多边形 做扫描转换,而这里是同时对多 个多边形做扫描转换。
P
Q
画家算法 画家算法又称深度优先级表法, 它是深度排序算法的一种具体实 现。 先画远景,再画中景,最后 画近景。
I=Ia·κa + Ip ·Id · N ) /(r+k) ( L
其中r是光源到表面的距离,k是根 据经验选取的一个常数。
基本概念
光照模型(Illumination Model):
又称明暗模型,描述物体表面的色彩明暗与 光源特性和物体表面特性的关系。主要用于物 体表面某点处的光强度计算.
光照模型的分类
缺点:
占用空间大 不利于实现反走样、透明和半透明等处理
深度排序算法
深度排序算法的主要步骤:
1. 把所有的多边形按顶点最大z坐标值进行 排序。 2. 解决当多边形z范围发生交迭时出现的不 明确问题。 3. 按最大z坐标值逐渐减小的次序,对每个 多边形进行扫描转换。
算法的基本思想是按多边形离开观察位 置的距离进行排序,然后按照距离减少的 次序,把每个多边形内部点应有的象素值 送入帧缓存存贮器中。 算法考查多边形的深度次序是在客体 空间中进行,图形显示时覆盖步骤是在图 象空间中实现,所以可以说是一个客体空 间和图象空间的混合算法。
Lambert定律指出,漫反射的效果与 表面相对于光源的取向有关,即: Id=Ip ·κd · COSθ 其中Id是漫反射引起的可见表面上 一点的亮度。Ip是点光源发出的入射光 线引起的亮度。κd是漫反射系数,它 的取值在0到1之间,随物体材料不同而 不同。 θ是可见表面法向N和点光源方 向L之间的夹角,即入射角,它应该在 0°到90°之间。
深度缓存器算法
深度缓存器算法最早由Catmull提出的,是 一种典型的,最简单的图象空间面消隐算法.
该算法也称为Z-buffer算法 算法的原理
算法的实现步骤
算法的特点
深度缓存器算法原理
先将待处理的景物表面上的采样点变换到图象 空间(屏幕坐标系),计算其深度值。 根据采样点在屏幕上的投影位置,将其深度与 已存储在Z缓存器中的相应像素处的原可见点 的深度值进行比较。
颜色的三特性
颜色有如下三个特性:色调(Hue)、饱和度 (Saturation)和亮度(Lightness)。色调,是一种颜色 区别于其它颜色的因素,也就是我们平常所说的红、 绿、蓝、紫等;饱和度是指颜色的纯度,鲜红色饱和 度高,而粉红色的饱和度低。 与之相对应,从光学物理学的角度出发,颜色的三个 特性分别为:主波长(Dominant Wavelength)、纯度 (Purity)和明度(Luminance)。主波长是产生颜色光的 波长,对应于视觉感知的色调;光的纯度对应于饱和 度,而明度就是光的亮度。
光照模型的分类
简单光照模型绘制效果 复杂光照模型绘制效果
如果新的采样点的深度值大于原可见点的深度, 表明新的采样点遮住了原可见点,则采用该采 样点处的颜色更新帧缓存器中相应像素的颜色, 同时用其深度值更新Z缓存器中的深度值。 否则,不作修改。
Z-Buffer算法的特点
优点:
形体在屏幕上的出现顺序是无关紧要的,算法简 单; 便于硬件实现。
光线投射算法
考查由视点出发穿过观察平面上一像 素而射入场景的一条射线,则可以确定出 场景中与该射线相交的物体。在计算出光 线与物体表面的交点之后,离像素最近的 交点所在的表面即为可见面。这种可见性 判别模式应用了光线投射算法。
光线投射(ray casting)建立 于几何光学的基础之上,它沿光线的 路径追踪可见面,是一种有效的可见 性判别手段。由于场景中有无限多条 光线,而我们仅对穿过像素的光线感 兴趣,因此可考虑从像素出发,逆向 跟踪射入场景的光线路径。光线投射 算法对于包含曲面,特别是球面的场 景有很高的效率 。
如果所有这五步检查都为假,就假定P是 遮挡了Q,交换P和Q在排序表中的位置。 如果仍做交换,算法会永远循环下去而没 有结果。 为了避免循环,可以做一个限制。当做过 首次五步检查后,发生某个多边形被移到排序 表的末尾时,就立即加上一个标记,以后就不 能再做移动。出现再次应该移动时,用一个多 边形所在的平面,把另一个多边形剪裁分为两 个。
为了简化公式中余弦值的实际计算, 可以假定向量N和L都已经正规化,即已 经是长度为1的单位向量,这样就可以 使用向量的数量积或内积。 因为这时 cosθ L N,于是得: Id=Ip ·Id · ·N) (L 将环境光线和漫反射的效果结合起 来,计算亮度的公式应该写成:
I=Ia·κa + Ip ·Id · L N ) (
消隐的概念 消隐算法分类 消隐算法 深度缓存器算法 区间扫描线算法 深度排序算法 区域细分算法 光线投射算法 BSP树算法 多边形区域排序算法
消隐的概念
用计算机生成三维物体的真实图形, 在用显示 设备描述物体的图形时,必须把三维信息经过 某种投影变换,在二维的显示表面上绘制出来。 由于投影变换失去了深度信息,往往导致图形 的二义性。要消除二义性,就必须在绘制时消 除被遮挡的不可见的线或面,习惯上称作消除 隐藏线和隐藏面,或简称为消隐。 消隐实例
计算机图形学高级话题--
真实感图形生成
讲授主要内容:
引言 消隐 真实感图形的绘制 实时真实感图形学技术 总结
引言
对于场景中的物体、要得到它的真实感图形, 就要对它进行透视投影,并消除隐藏面, 然后计算可见面的光照明暗效果,最后在 计算机中绘制出让观察者有身临其境感觉 的图形.
消隐
确定景物中的所以可见面,将视域之外或其它景物遮挡 的不可见面消除
4.
绘制真实感图形
根据一定的光照模型和光强度计算,将其转换为适合图 形设备的颜色值,生成投影画面上每个像素的光强度,让 观察者产生身临其境的感觉
基本概念—颜色
颜色
要产生具有高度真实感的图形,颜色是最重要 的部分。在我们的光照明模型中,通常只要分别 计算R、G、B 三个分量的光强值,就可以得到某 个象素点上的颜色值,给人以某种颜色的感觉。 我们从人体视觉的角度出发,介绍计算机图 形学中颜色和视觉的一些相关知识。
真实感图形的绘制
消隐能反映景物间的相互遮挡关系,能够增 强图形的深度感和层次感. 如何利用计算机进行真实感图形的绘制呢?
真实感图形的绘制步骤
1. 场景造型 采用数学方法建立三维场景的几何描述并输入到计算机
2. 3.
取景变换、透视投影
将三维几何描述转换为二维透视图的内容
视域裁剪、消除隐藏面
不明确问题检验方法
所有多边形按顶点最大z坐标 值排序后得到一个排序表,设P 是排在表中最后的那个多边形。 设Q是排在P前面并且z坐标范 围与其发生交迭的一个多边形, 对Q与P的次序关系进行检查。
检查可以按下面列出的五个步 骤进行,每个步骤判断一种情况。
1.多边形的x坐标范围不相交迭,所 以多边形不相交迭。 2.多边形的y坐标范围不相交迭,所 以多边形不相交迭。 3. P整个在Q远离观察点的一侧。 4. Q整个在P的靠近观察点的一侧。 5. 多边形在z=0平面上的投影本身不 相交迭。
区域分割算法
区域分割算法将投影平面分割成区域,考 察可 见的多边形,完成对这一区域的显示任务。否 则,就将区域再分割成小的区域,对小的区域 递归地进行判断。由于区域逐渐变小,在每个 区域内的多边形逐渐变少,最终总可以判定哪 些多边形是可见的。这个算法利用的区域的相 关性,这种相关性是指位于适当大小的区域内 的所有象素,表示的其实是同一个表面。