计算机图形学基础教程课件之习题课1(第二版)(孙家广 胡事民编著)
计算机图形学章节1PPT课件
60年代确立并得到发展
70年代进入技术实用化
但80年代初,图形学 依然是较小的学科,原 因是图形硬件设备十分昂贵,且基于图形的应用相 对较少。后来,情况发生了变化……
14
Graphics Lab.PKU
2020/11/6
3
Graphics Lab.PKU
2020/11/6
第一讲 计算机图形学概述
1.1 研究内容 1.2 发展历史 1.3 应用举例 1.4 当前研究动态
4
Graphics Lab.PKU
2020/11/6
1.1 研究内容
?何谓图形 ?构成图形的要素 ?两种表示法 ?所研究的内容
5
Graphics Lab.PKU
图像生成(计算机图形学)
图像变换 (图像处理)
数
数
字
据
图
模
像
型
模型(特征)提取 (计算机视觉,模式识别)
模型变换 (计算几何)
.发展特点: 交叉、界线模糊、相互渗透
8
Graphics Lab.PKU
2020/11/6
CAGD(Computer Aided Geometric Design)
几何形体在计算机中的表示,分析、研究怎样灵 活方便地建立几何形体的数学模型,提高算法效 率,在计算机内更好地存储和管理这些模型等。 研究曲线、曲面的表示、生成、拼接、数据拟合。
硬件发展
图形显示器的发展
图形显示器是计算机图形学中关键的设备
60年代中期:画线显示器(亦称矢量显示器) 需要刷新。设备昂贵,限制普及
60年代后期:存储管式显示器 不需刷新,价格较低,缺点是不具有动态修
《计算机图形学》课件第一章
2. 模式识别(Pattern Recognition 图形信息输入计算机后, 先对它进行特征提取等预处 理, 然后用统计判定方法或语法分析方法对图形做出识别, 最后由计算机按照使用需求给出图形的分类或描述, 这就 是模式识别。 邮政自动分拣、 中西文字符和工程图纸自动 阅读等都是模式识别技术的应用实例。 模式识别研究怎样 分析和识别输入的图形, 以便找出其中蕴涵的内在联系或 抽象模型。
到能够展示某些期望特征的新图像。
图像处理、 模式识别、 计算机图形学、 计算几何和分 形几何这些学科都已有四十余年的历史了。 但长期以来, 它们基本上是以相互独立的形式各自发展、 成长的。 到了 20世纪80年代, 由于光栅图形显示器的广泛使用, 以及大 量复杂的应用课题的研究需要, 这几门学科的相互关系和 共同技术引起了人们越来越大的兴趣, 其学科界限日益模 糊。 从计算机软硬件的角度来看, 起核心作用的是图形显 示技术。
其后, MIT发展了APT(Automatically Programmed Tools) 数控加工自动编程语言, 这是目前国际上最为通用的加工 编程工具。 整个20世纪50年代, 使用的都是电子管计算机, 用机器语言编程。 计算机仍以科学计算为主, 为之配置的 图形设备仅具有输出功能, 计算机图形学处于被动式的图 形处理阶段。
(4)图形信息的存储、 检索与交换技术。 例如, 图 形信息的各种机内外表示方法、 组织形式、存取技术、 图 形数据库的管理、 图形信息的通信等。
(5) 人机交互与用户接口技术。 例如, 新型定位设 备、 选择设备等的研发, 各种交互技术如构造技术、 命令 技术、 选择技术、 响应技术等的研究, 以及用户模型、 命 令语言、 反馈方法、 窗口系统等用户接口技术的研究等。
02-计算机图形学基础(第二版)PPT课件
透镜组
光 孔
触钮开关
导线
笔体 光导纤维
图2.3 光笔的结构
2021/7/22
7
图形输入设备
触摸屏(touch screen) 当用手指或者小杆触摸屏幕时,触点位置
便以光学的(红外线式触摸屏)、电子的(电 阻式触摸屏和电容式触摸屏)或声音的(声音 探测式)方式记录下来。
2021/7/22
8
图形输入设备
随机扫描(random-scan)的图形显示器中电 子束的定位和偏转具有随机性,即电子束的扫 描轨迹随显示内容而变化,只在需要的地方扫 描,而不必全屏扫描。
2021/7/22
31
随机扫描的图形显示器
2
Y
2
3
1
1
3
t
1
X
2
3
图2.16 随机扫描图形显示器的工作原理
2021/7/22
32
随机扫描的图形显示器
2021/7/22
52
2.4 显示子系统
光栅扫描图形显示子系统的结构 绘制流水线 相关概念
2021/7/22
53
光栅扫描图形显示子系统的结构
CPU
系统 主存
显示 控的光栅图形显示子系统
2021/7/22
54
光栅扫描图形显示子系统的结构
CPU
系统 主存
帧缓存
2021/7/22
41
液晶显示器——原理
液晶分子的排列在微弱的外部电场、磁场或者 应力、温度变化等作用下非常容易改变。当液 晶分子的某种排列状态在电场作用下变为另一 种状态时,液晶的光学性质随之改变,这种产 生光被电场调制的现象称为液晶的电光效应。
2021/7/22
《计算机图形学》课件
光照模型与阴影生成算法的应用广泛,例如在游戏开发、虚拟现实和 电影制作等领域。
纹理映射算法
纹理映射算法用于将图像或纹理贴图映射到三维物体 的表面。
输标02入题
常用的纹理映射算法包括纹理坐标、纹理过滤和纹理 压缩等。
01
03
纹理映射算法的应用广泛,例如在游戏开发、虚拟现 实和数字艺术等领域。
04
工业设计
使用CAD等技术进行产品设计和原型制作 。
游戏开发
创建丰富的游戏场景和角色,提供沉浸式 的游戏体验。
科学可视化
将复杂数据以图形方式呈现,帮助人们理 解和分析数据。
虚拟现实与增强现实
构建虚拟环境,实现人机交互,增强现实 感知。
02
计算机图形学基础知识
图像与图形的关系
图像
由像素组成的二维或三维数据,通常 用于表示真实世界或模拟的视觉信息 。
全息投影技术
总结词
全息投影技术能够实现三维立体显示,为观众提供沉浸式的 观影体验。
详细描述
全息投影技术利用干涉和衍射原理,将三维物体以全息图像 的形式呈现出来,使观众能够从不同角度观察到物体的立体 形态。这种技术将为电影、游戏和其他娱乐领域带来革命性 的变化。
增强现实技术
总结词
增强现实技术能够将虚拟信息与现实世界相结合,提供更加丰富的交互体验。
HSL和HSV模型
基于色调、饱和度和亮度(或 明度)来描述颜色。
RGBA模型
在RGB基础上增加透明度通道 。
图像处理技术
滤波和锐化
通过改变图像的像素值 来减少噪声、突出边缘
或细节。
色彩调整
改变图像中颜色的分布 和强度,以达到特定的
视觉效果。
图像分割
计算机图形学基础教程PPT课件
经典的真实感图形学
光照模型
• 简单光照模型 • 局部光照模型 • 整体光照模型
绘制方法
• 光线跟踪 • 辐射度
加速算法及其他
• 包围体树、自适应八叉树等 • 阴影算法、纹理合成
Xfrog3.0生成的挪威云杉
1974年,在Colorado大学召开了第一届SIGGRAPH 年会, 并取得了巨大的成功
图形学的杂志和会议
会议:Siggraph, Eurograph, Pacific Graphics
Computer Graphics International,
Graphics Interface
杂志: ACM Transaction on Graphics
基于多层阴影翼的软影绘制
研究热点
真实感图形实时绘制
• 物体网格模型的面片简化,LOD, Occlusion culling
• 吴建华的牛头ห้องสมุดไป่ตู้
• 基于图象的绘制、基于Vedio绘制 • 画中游
画中游
Video from HKUST:
野外自然景物的模拟:山、水、云、树、草、火等
清 华 山 水
1999
1964年MIT的教授Steven A. Coons提出了超限插值的 新思想,通过插值四条任意的边界曲线来构造曲面。
• 58年提出“CAD”概念 • 图形学最高奖以他名字命名。
70年代
光栅图形学迅速发展
• 区域填充、裁剪、消隐等基本图形概念、及其相应算法 纷纷诞生
图形软件标准化
• 1974年,ACM SIGGRAPH的与ACM成立图形标准化委 员会,制定“核心图形系统”(Core Graphics System)
计算机图形学-第一章
1.4 图形显示设备 (阴极射线管显示器)
– 带宽问题
– 高分辨率和高的刷新频率要求有高带宽 1024*768/85模式需要85M带宽 – – – –
依然是个问题! 解决方法:隔行扫描(现在已经基本不用,主流地显示器都采用逐行扫描方式) 隔行扫描的工作原理:把一帧分两场,即奇数场与偶数场 场频:==2*帧频
12
1.2 计算机图形学的发展
Whirlwind: early graphics using VectorScope (1951)
first CAD system (IBM 1959)
Spacewars: first computer graphics game (MIT 1961)
SketchPad: first interactive graphics (1961)
a31
a32
a33
a34
a35
a41
a42
a43
a44
a45
5×5图像
a51
a52
a53
a54
a55
x
0
直线的参数方程:ax+by+c=0
7
1.1 计算机图形学及其相关概念 计算机图形学研究的对象
8
• 图形与图像
—图像纯指计算机内以位图(Bitmap)形式存在的 灰度信息。
—图形含有几何属性,更强调场景的几何表示, 是由场景的几何模型和景物的物理属性共同组 成的。 —图形主要分为两类 – 基于线条信息表示 – 明暗图(Shading)
24
科学可视化
25
-By Science Visualization challenge 2013
科学可视化
计算机图形学基础教程习题课1(第二版)(孙家广_胡事民编著)
1.列举计算机图形学的主要研究内容。
计算机中图形的表示方法、图形的计算、图形的处理和图形的显示。
图形硬件、图形标准、图形交互技术、光栅图形生成算法、曲线曲面造型、实体造型、真实感图形计算与显示算法,以及科学计算可视化、计算机动画、自然景物仿真、虚拟现实等。
2.常用的图形输出设备是什么?显示器(CRT、LCD、等离子)、打印机、绘图仪等。
2.常用的图形输入设备是什么?键盘、鼠标、跟踪球、空间球、数据手套、光笔、触摸屏、扫描仪等。
3.列出3种图形软件工具。
AutoCAD、SolidWorks、UG、ProEngineer、CorelDraw、Photoshop、PaintShop、Visio、3DMAX、MAYA、Alias、Softimage等。
错误:CAD4.写出|k|>1的直线Bresenham画线算法。
dddd设直线方程为:y=kx+b,即x=(y-b)/k,有x i+1=x i+(y i+1-y i)/k=x i+1/k,其中k=dy/dx。
因为直线的起始点在象素中心,所以误差项d的初值d0=0。
y下标每增加1,d的值相应递增1/k,即d=d+1/k。
一旦d≥1,就把它减去1,这样保证d 在0、1之间。
●当d≥0.5时,最接近于当前象素的右上方象素(x i+1,y i+1),x方向加1,d减去1;●而当d<0.5时,更接近于上方象素(x i,y i+1)。
为方便计算,令e=d-0.5,e的初值为-0.5,增量为1/k。
●当e≥0时,取当前象素(x i,y i)的右上方象素(x i+1,y i+1),e减小1;●而当e<0时,更接近于上方象素(x i,y i+1)。
void Bresenhamline (int x0,int y0,int x1, int y1,int color){ int x, y, dx, dy;float k, e;dx = x1-x0, dy = y1-y0, k=dy/dx;e=-0.5, x=x0, y=y0;for (i=0; i≤dy; i++){ drawpixel (x, y, color);y=y+1,e=e+1/k;if (e≥0){ x++, e=e-1;}}}4.写出|k|>1的直线中点画线算法。
计算机图形学基础教程课件之附录(第二版)(孙家广 胡事民编著)
(6) 矩阵的逆
对于一个n×n的方阵A,如果存在一个n×n 的方阵B,使得AB=BA=In,则称B是A的逆, 记为B=A-1,同时A则被称为非奇异矩阵。
矩阵的逆是相互的,A同样也可记为B=A-1, B也是一个非奇异矩阵。
任何非奇异矩阵有且只有一个逆矩阵。
(7) 矩阵运算的基本性质 ① 矩阵加法适合交换律与结合律 A+B=B+A A+(B+C)=(A+B)+C ② 数乘矩阵适合分配律与结合律 α(A+B)=αA+αB α(A·B)=(αA)·B=A·αB
A.4 线性方程组的求解
对于一个有n个变量的方程组:
a11x1 a12x2 a1nxn b1
a21x1 a22x2 a2nxn b2
an1x1 an2x2 annxn bn
可将其表示为矩阵形式:AX=B,A为系数 矩阵。该方程有惟一解的条件是A为非奇异 矩阵,则方程的解为:X=A-1B。
用矩阵表示为:
xv a 0 bxw
yv
0
c
d
yw
1 0 0 1 1
B.2 二维图形的几何变换
用齐次坐标表示点的变换将非常方便,因 此在附录B中所有的几何变换都将采用齐次 坐标进行运算。
二维齐次坐标变换的矩阵的形式是:
a b c
d
e
f
g h i
这个矩阵每一个元素都是有特殊含义的。
附录
附录A 计算机图形学的数学基础 附录B 图形的几何变换 附录C 形体的投影变换
附录A 计算机图形学的数学基础
A.1 矢量运算
矢量是一有向线段,具有方向和大小两个 参数。设有两个矢量V1(x1, y1, z1),V2(x2, y2, z2)。
计算机图形学课件第一章引言常用文档
■图形的表示 Graphics Image 点阵法:用具有颜色信息的点阵来表示图形的
一种方法。(Image)
参数法:以计算机中所记录图形的形状参数与
属性参数来表示图形的一种方法。(Graphics)■与计算机图形学相关的学科
计算机图形学试图从非图象形式的数据描述来
生成(逼真的)图象。
数字图象处理旨在对图象进行各种加工以改善
■具有一定实践体会和相关的编程能力。
课程内容
■概论 ■计算机图形设备 ■交互式技术 ■几何造型技术
■基本图形生成算法 ■二维图形变换及二维观察 ■三维图形变换及三维观察
■曲线和曲面、真实感图形显示
第1章 引言
主要内容:
•什么是计算机图形学? 3 计算机图形学的应用
图1-3 计算机图形系统的结构 •计算机图形学研究的对象是什么? 计算机图形学基础 陈传波 陆枫 编著 计算机图形学中所研究的图形:从客观世界物体中抽象出来的带有颜色及形状信息的图和形。
图象的视觉效果。
计算机视觉是研究用计算机来模拟生物外显或
宏观视觉功能的科学和技术。
特征数据、结构数据
计算机图 形学
计算机 视觉
图象信号
数字图象处理 图1-1 图形图象处理相关学科间的关系
1.2 计算机图形学的发展
计算机图形学的确立 ■酝酿期(50年代) ■萌芽期(60年代) ■发展期(70年代) ■普及期(80年代) ■提高增强期(90年代)
■近二十年中,国际标准化组织ISO已经批准 和正在讨论的与计算机图形有关的标准有:
GKS、GKS-3D、PHIGS、CGM、 CGI、IGES、STEP ■事实标准 如SGI的OpenGL,微软的Direct X, Adobe的Postscript等
计算机图形学课后习题答案(孙家广)
第一章:P561、列出在你过去学习工作中用过与计算机图形学有关的程序c语言:#include <graphics.h>main(){int graphdriver = VGA, graphmode=VGAHI;initgraph(&graphdriver,&graphmode,””);setbkcolor(BLUE);setcolor(WHITE);setfillstyle(1,LIGHTRED);bar3d(100,200,400,350,100,1);floodfill(450,300,WHITE);floodfill(250,450,WHITE);setcolor(LIGHTGREEN);rectangle(450,400,500,450);floodfill(470,420,LIGHTGREEN);getch();closegraph();}JA V A语言:例1、画点Import java.io.*;Class point{int ax;int ay;int bx;int by;public point(int ax, int ay, int bx, int by){float k ; //计算斜率float b;k=(by-ay)/(bx-ax);b=ay-ax*k;system.out.println(“直线的方程为:y=”+k+”x”+”+”+b);}}例2、画矩形class DrawPanel extends Jpanel{public void paint(Graphics g){super.paint(g);Graphics2D g2= (Graphics 2D);Double leftx=200;Double topy=200;Double width=300;Double height=250;Rectangle2D rect= new Rectangle2D.double(leftx,topy,width,height);G2.draw(rect);}}2、列出你所用过的窗口系统中与观感有关的元素的功能,如图标、滚动棒、菜单等使用滚动条当文档、网页或图片超出窗口大小时,会出现滚动条,可用于查看当前处于视图之外的信息。
计算机图形学完整ppt课件
工业设计
利用计算机图形学进行产品设计、仿 真和可视化,提高设计效率和质量。
建筑设计
建筑师使用计算机图形学技术创建三 维模型,进行建筑设计和规划。
计算机图形学的相关学科
计算机科学
计算机图形学是计算机科学的一个重 要分支,涉及计算机算法、数据结构、 操作系统等方面的知识。
物理学
计算机图形学中的很多技术都借鉴了 物理学的原理,如光学、力学等,用 于实现逼真的渲染效果和物理模拟。
02
03
显示器
LCD、LED、OLED等,用 于呈现图形图像。
投影仪
将计算机生成的图像投影 到大屏幕上,用于会议、 教学等场合。
虚拟现实设备
如VR头盔,提供沉浸式的 3D图形体验。
图形输入设备
键盘和鼠标
最基本的图形输入设备,用于操 作图形界面和输入命令。
触摸屏
通过触摸操作输入图形指令,常 见于智能手机和平板电脑。
多边形裁剪算法
文字裁剪算法
判断一个多边形是否与另一个多边形相交, 如果相交则求出交集部分并保留。
针对文字的特殊性质,采用特殊的裁剪算法 进行处理,以保证文字的完整性和可读性。
05
光照模型与表面绘制
光照模型概述
光照模型是计算机图形学中用于模拟光线与物体表面交互的数学模型。
光照模型能够模拟光线在物体表面的反射、折射、阴影等效果,从而增强图形的真 实感。
二维纹理映射原理
根据物体表面的顶点坐标和纹理坐标,计算出每个像素点对应的纹 理坐标,从而确定像素点的颜色值。
二维纹理映射实现方法
使用OpenGL中的纹理映射函数,将纹理图像映射到物体表面。
三维纹理映射技术
三维纹理坐标
定义在三维空间中的坐标,表示纹理图像上的位置。
教学课件 《计算机图形学》
孔斯曲面。法国雷诺公司的贝赛尔(P.Bezier)也提出了Bezier曲
线和曲面,他们被称为计算机辅助几何设计的奠基人。
•
70年代是计算机图形学发展过程中一个重要的历史时
期,计算机图形技术的应用进入了实用化的阶段,交互式图形系
统在许多国家得到应用;许多新的更加完备的图形系统不断被研
制出来。除了在军事上和工业上的应用之外,计算机图形学还进
次使用了“计算机图形”(Computer Graphics)这
个术语。此论文指出交互式计算机图形学是一个
可行的、有用的研究领域,从而确立了计算机图
形学作为一个崭新的学科分支的独立地位。
•
1964年,孔斯(S.Coons)提出了用小块曲面片组合表
示自由曲面,使曲面片边界上达到任意高阶连续的理论方法,称
•
1.以大型机为基础的图形系统
•
2.以中型或小型机为基础的图形系统
•
3.以工作站为基础的图形系统
•
4.以微机为基础的图形系统
2.2 图形硬件设备
•2.2.1图形显示设备
•1.阴极射线管(CRT)
• 最大偏转角 • 余辉时间 • 刷新 • 刷新频率
• 2.彩色阴极射线管(彩色CRT)
• 电子束穿透法 • 荫罩法
• 常用概念:
• 图像刷新 • 行频、帧频 • 逐行扫描、隔行扫描 • 像素 • 分辨率 • 点距 • 显示速度 • 帧缓冲存储器(帧缓存、显示存储器) • 色彩与灰度等级 • 颜色查找表
• 6.液晶显示器(Liquid-Crystal Display)
• 可视角度 • 点距和分辨率
• 7.等离子显示器
•
6.科学计算可视化
第2章 图形系统
计算机图形学第一讲课程介绍精品PPT课件
1 Graphics Systems and Models - Overview of the field - Image formation as cameras - Modeling-Rendering Paradigm
2 Graphics Programming - Introduction to programming with OpenGL
如何查找资料Βιβλιοθήκη • 北大图书馆数据库 • IEEE • Web of Science • ACM
计算机图形学讲义-1
计算机图形学
更新时间*
计算机图形学讲义-1
课程介绍
计算机图形学:用计算机构造和显示图形。 计算机图形学研究利用计算机产生图形和 显示图形,它包括对要产生图形的物体的 描述(建模或几何描述),对图形数据的 管理和操作(数据结构和图形变换),图 形的生成,显示和输出。在交互式的图形 系统中,还包括研究图形的输入和图形操 作的人机接口。 [HB]
计算机图形学讲义-1
• 编程技能:C,或C++语言,或其它语 言。以C语言为主。
• 本课程将使用OpenGL图形库,同学可使 用任何语言来调用OpenGL的函数完成作 业。例子均采用glut,将讲解如何使用 glut来编写OpenGL的程序以及在 Windows环境下如何编译程序。
计算机图形学讲义-1
[EA] 为教材和参考文献索引,以下同此。
计算机图形学讲义-1
参考书
• [F1] J. D. Foley, A. van Dam: Introduction to Computer Graphics,机械工业出版社,2004年影 印版。
• [F2] J. D. Foley, A. van Dam, S. K. Feiner and J. F. Hughes, Computer Graphics, principles and practice.机械工业出版社,2002年影印版。
计算机图形学基础教程——课件
实践项目与案例分析
3D建模与渲染项目
01
02
03
3D建模
学习使用3D建模软件(如 Blender、Maya等)进行 基本物体建模,包括几何 体、曲面和细分曲面等。
材质与纹理
掌握如何为模型添加材质 和纹理,以实现更逼真的 视觉效果。
光照与渲染
学习设置场景灯光,理解 不同类型的光源对渲染效 果的影响,以及如何使用 渲染器进行最终渲染。
光照模型
光源类型
包括点光源、方向光源和 聚光灯等,每种光源都有 不同的光照效果。
材质属性
包括颜色、纹理、透明度 等,影响物体对光的反射 和折射方式。
光照计算
根据光源和材质属性,计 算物体表面的光照强度和 颜色,以实现逼真的渲染 效果。
纹理映射
STEP 01
纹理定义
STEP 02
纹理映射技术
纹理是用于描述物体表面 细节的图像或图像集。
图像压缩
减少图像文件大小的过程,以加 快传输和存储速度。
图像分辨率
描述图像的细节和清晰度的度量 。
图像处理算法
用于改善图像质量或提取信息的 各种算法和技术。
计算机图形学中的数学基础
01
向量运算
在图形学中用于描述方向和位移的 基本数学概念。
插值和拟合
用于创建平滑曲线和表面的数学方 法。
03
02
矩阵运算
发展历程
起步阶段
20世纪50年代,计算机图形学开始起步,主要应用 于科学可视化。
发展阶段
20世纪80年代,随着计算机硬件和软件技术的进步 ,计算机图形学在电影、游戏等领域得到广泛应用。
成熟阶段
21世纪初,计算机图形学技术逐渐成熟,广泛应用于 教育、工业设计、医学影像等领域。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
5. 写出下图中多边形的边表(新边表)
P3(2,6) 6 P5(7,5) 5 4 P4(5,4) 3 P2(2,3) 2 P6(8,2) 1 P1(4,1)
0 1 2 3 4 5 6 7 8
6 5 4 3 P2(2,3) 2 1 0
P3(2,6)
P4(5,5)
P5(7,6)
P6(8,2) P1(4,1)
其中变换矩阵:
cos 36 0 Ry sin 36 0
0 sin 1 0
36 0 36 0
0 cos
0 0 0 1
cos 36 sin Rz 36 0 0
sin cos
36
1 2 3 4 5 6 7 8
5. 写出下图中多边形的边表(新边表)。
6 6 5 4 3 P2(2,3) 2 1 0 P3(2,6) P5(7,5) 5 P3P4 5 -1.5 6
4 P4(5,4)
P1(4,1)
5 2 5 P2P3
P5P6 4 4 2 P1P6
3
P6(8,2) 2 1 0
2 0 6
(1) 平移坐标系原点到P(0,-1)点; 1 0 0 T1 0 1 1 0 0 1
(2) 关于直线y=x作对称变换; 0 1 0 T2 1 0 0 0 0 1 1 0 0 T (3) 恢复坐标轴平移。 3 0 1 1 0 0 1
习题课
1. 列举计算机图形学的主要研究内容。 计算机中图形的表示方法、图形的计算、 图形的处理和图形的显示。 图形硬件、图形标准、图形交互技术、光 栅图形生成算法、曲线曲面造型、实体造 型、真实感图形计算与显示算法,以及科 学计算可视化、计算机动画、自然景物仿 真、虚拟现实等。
2. 常用的图形输出设备是什么?
0 1 1 1 3 A T A 1 0 1 2 0 0 0 1 1 1
0 1 1 5 3 B T B 1 0 1 2 4 0 0 1 1 1
1 0 0 0 1 0 1 0 0 0 1 1 T T3 T2 T1 0 1 1 1 0 0 0 1 1 1 0 1 0 0 1 0 0 1 0 0 1 0 0 1
4. 写出|k|>1的直线中点画线算法。
M1
M2
P1
Q M
P2
P(xp,yp)
4. 写出|k|>1的直线中点画线算法。
构 造 判 别 式 : d=F(M)=F(xp+0.5,yp+1)=a(xp+0.5) +b(yp+1)+c 当d<0,M在Q点左侧,取右上方 P2为下一个象素; P1 当d>0,M在Q点右侧,取上方P1 为下一个象素; 当d=0,选P1或P2均可,约定取 P1为下一个象素;
当d≥0.5时,最接近于当前象素的右上方象 素(xi+1,yi+1),x方向加1,d减去1; 而当d<0.5时,更接近于上方象素(xi,yi+1)。 为方便计算,令e=d-0.5,e的初值为-0.5, 增量为1/k。 当e≥0时,取当前象素(xi,yi)的右上方象素 (xi+1,yi+1),e减小1; 而当e<0时,更接近于上方象素(xi,yi+1)。
0 sin 1 0
36 0 36 0
0 cos
0 0 0 1
;
画半圆;}
用2d代替d的算法: void Midpoint Line (int x0,int y0,int x1, int y1,int color) { int a, b, d1, d2, d, x, y; a=y0-y1, b=x1-x0, d=a+2*b; d1=2*b, d2=2*(a+b); x=x0, y=y0; drawpixel(x, y, color); while (y<y1) { if (d<0) {x++, y++, d+=d2; } else {y++, d+=d1;} drawpixel (x, y, color); } /* while */ } /* mid PointLine */
显示器(CRT、LCD、等离子)、打印机、 绘图仪等。
2. 常用的图形输入设备是什么?
键盘、鼠标、跟踪球、空间球、数据手套、 光笔、触摸屏、扫描仪等。
3. 列出3种图形软件工具。
AutoCAD、SolidWorks、UG、ProEngineer、 CorelDraw、Photoshop、PaintShop、Visio、 3DMAX、MAYA、Alias、Softimage等。
36 0 0
0 0 0 1
0 2 0 1
算法二:以圆弧为基本图元
for(j=0;j<72;j++) { 绕Y轴逆时针旋转5度,
cos 36 0 Ry sin 36 0
M1
M2
Q
P2
M P(xp,yp)
增量计算: 若d0,取正上方象素P1(xp,yp+1),要判下一个象 素位置,应计算 d1=F(M1)=F(xp+0.5,yp+2)=a(xp+0.5)+b(yp+2)+c=d+b 增量为b。 若d<0,取右上方象素P2(xp+1,yp+1)。要判断再下 一象素,则要计算 d2=F(M2)=F(xp+1.5,yp+2)=a(xp+1.5)+b(yp+2)+c=d+a+b 增量为a+b。 d的初值d0=F(x0+0.5,y0+1)=F(x0,y0)+0.5a+b =0.5a+b
6. 写出以原点为球心,半径为2的球体的旋转生成算 法。 算法一:以点为基本图元 for(j=0;j<72;j++) { 绕Y轴逆时针旋转5度,变换矩阵为Ry; //画出半圆 画点(0,2,0);
for(i=0;i<36;i++)
{ 将当前点绕Z轴逆时针旋转5度,矩阵为Rz; 画变换后的点(x′,y′,z′);}}
void Bresenhamline (int x0,int y0,int x1, int y1,int color) { int x, y, dx, dy; float k, e; dx = x1-x0, dy = y1-y0, k=dy/dx; e=-0.5, x=x0, y=y0; for (i=0; idy; i++) { drawpixel (x, y, color); y=y+1,e=e+1/k; if (e0) { x++, e=e-1;} } }
0 1 1 3 6 C T C 1 0 1 5 2 0 0 1 1 1
6.空间直线AB的两端点坐标为A(0,0,0), B(1,1,1),试写出绕AB旋转45°的三维复合 变换矩阵。
7. 写出以原点为球心,半径为2的球体的旋转生成算 法。
8 -1/3 5 4 -1 3 P1P2
1 2 3 4 5 6 7 8
5. 写出下图中多边形的边表(新边表)。
6 6 5 4 3 P (2,3) 2 2 1 0 P3(2,6) P4(5,5) P5(7,6) 5 4 3 P6(8,2) 2 1 0 5 -3 6 P3P4 2 0 6 8 -1/4 6 5 2 6 P2P3 P5P6
4. 写出|k|>1的直线Bresenham画线算法。
d
d
d d
4. 写出|k|>1的直线Bresenham 画线算法。
设直线方程为:y=kx+b,即 d x=(y-b)/k , 有 d xi+1=xi+(yi+1-yi)/k = xi+1/k, 其中k=dy/dx。 因为直线的 d 起始点在象素中心,所以误 差项d的初值d0=0。y下标每 d 增加1,d的值相应递增1/k, 即d=d+1/k。一旦d≥1,就 把它减去1,这样保证d在0、 1之间。
P1(4,1)
1 2 3 4 5 6 7 8
4 -1 3 P1P2
4 4 2 P1P6
6.已知三角形ABC的各顶点坐标为A(1,2)、 B(5,2)、C(3,5),现有直线L,L上的两点P、 Q的坐标分别为P(0,-1)和Q(1,0),将三角形 ABC相对直线L作对称变换后得到三角形 A′B′C′,按步骤列出变换矩阵,并计算三角形 A′B′C′各顶点的坐标值。