图形变换透视投影课件_第1页
图形变换透视投影课件_第2页
图形变换透视投影课件_第3页
图形变换透视投影课件_第4页
图形变换透视投影课件_第5页
已阅读5页,还剩43页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

计算机图形学第十一讲1ppt课件.第四章图形变换

三维投影变换

----透视投影2ppt课件.透视图透视投影返回3ppt课件.透视图透视投影返回4ppt课件.透视图透视投影返回5ppt课件.三、透视投影变换--透视的基本知识透视投影是一种中心投影法,在日常生活中,我们观察外界的景物时,常会看到一些明显的透视现象。如:我们站在笔直的大街上,向远处看去,会感到街上具有相同高度的路灯柱子,显得近处的高,远处的矮,越远越矮。这些路灯柱子,即使它们之间的距离相等,但是视觉产生的效果则是近处的间隔显得大,远处的间隔显得小,越远越密。观察道路的宽度,也会感到越远越窄,最后汇聚于一点。这些现象,称之为透视现象。透视图6ppt课件.投影中心与投影平面之间的距离为有限例:室内白炽灯的投影,视觉系统…

参数:投影方向,距离A'ABB'投影中心投影线投影面特点:产生近大远小的视觉效果,由它产生的图形深度感强,看起来更加真实。三、透视投影变换7ppt课件.三、透视投影变换在介绍三维变换矩阵

时,说到矩阵中的元素(p,q,r)取非全0时,能产生透视效果。8ppt课件.

透视投影投影方程yxz投影中心dx’y’P’Pyxz投影平面一点透视9ppt课件.1.透视变换矩阵(1)一点透视(平行透视)

先设q

0,p=r=0,对点[xyz]进行变换:

1000[xyz1]010q=[xyzqy+1]

0010

0001

=[x/(qy+1)y/(qy+1)z/(qy+1)1]

(齐次化)10ppt课件.

现在来对Y的取值情况进行讨论:当y=0(在XOZ坐标平面内)

[x’y’z’1]=[x0z1]

当y

∞

[x’y’z’1]=[01/q01]

*[x/(qy+1)y/(qy+1)z/(qy+1)1]*a1.透视变换矩阵11ppt课件.1.透视变换矩阵

从以上结果可以看到:当Y值无限变大时,所有点经过变换后均集中于Y轴上的1/q处,于是所有平行于Y轴的直线将延伸相交于此点。该点(0,1/q,0)称为灭点。形成一个灭点的透视称为一点透视,亦称平行透视。为了取得较好的效果,取q0。(让灭点位于Y轴的负半轴上)12ppt课件.同样道理,当p

0,q=r=0时,则产生的一个灭点在X轴上(1/p,0,0)处。在这种情况下,所有平行于X轴的直线将延伸交于该点。

当r

0,p=q=0时,则产生的一个灭点在Z轴上(0,0,1/r)处。在这种情况下,所有平行于Z轴的直线将延伸交于该点。1.透视变换矩阵13ppt课件.(2)两点透视(成角透视)

如果在p,q,r中有两个非0元素,这时将会产生两个灭点,得到的透视图称为两点透视,或称成角透视。例如:设p

0,r

0,q=0,看透视变换的效果。14ppt课件.

100P[xyz1]0100

001r

0001=[xyzpx+rz+1]

=[x/(px+rz+1)y/(px+rz+1)z/(px+rz+1)1]=[x’y’z’1]一个灭点在X轴上的1/p处;另一个灭点在Z轴上的1/r处。(2)两点透视(成角透视)15ppt课件.(3)三点透视(斜透视)

以此类推,当p、q、r三个元素全为非0时,变换的结果将形成三点透视。产生的三个灭点将分别位于X轴上的1/p处、Y轴上的1/q处和Z轴上的

1/r处。此时,投影平面与三坐标轴均不平行。这时的三组平行线均产生灭点。16ppt课件.透视投影17ppt课件.

可以简单的推断:

1、与一个坐标轴垂直的平面作为投影平面的话,该平面上的投影一定是一点投影。

2、与两个坐标轴相交且与第三个坐标轴不相交的平面作为投影平面的话,该平面上的投影一定是两点投影。

3、与三个坐标轴都相交且不含有任何坐标轴的平面作为投影平面的话,该平面上的投影一定是三点投影。透视投影18ppt课件.透视投影灭点:不平行于投影平面的平行线,经过透视投影之后收敛于一点,称为灭点.主灭点:平行于坐标轴的平行线的灭点。一点透视两点透视三点透视特点:产生近大远小的视觉效果,由它产生的图形深度感强,看起来更加真实。灭点的个数?19ppt课件.

2.生成透视投影图的方法

生成透视图分两步进行:

对立体进行透视变换;然后向XOZ坐标平面作正投影。

10001000

1000T=010q0000=000q00100010001000010001000120ppt课件.所以其变换过程用矩阵表示为:

2.生成透视投影图的方法

21ppt课件.(1)一点透视图的生成在生成一点透视图时,为了避免特殊位置透视,使产生的透视图立体感较好,通常要在进行透视变换前先将立体平移到一个合适的位置(例如离开坐标系中心),然后再进行透视变换。在进行投影前位置不合适产生的结果22ppt课件.(2)两点透视图的生成两点透视图的生成方法是:

先使立体绕Z轴旋转一个角度,以使得立体上原平行于坐标平面XOZ和YOZ的表面与投影面XOZ产生一定的倾斜角(成角透视);向XOZ投影面作透视投影。23ppt课件.变换矩阵(2)两点透视图的生成24ppt课件.

在以上生成的变换矩阵中,有两个透视参数为非0(qsin,qcos),故生成的透视图为两点透视。

在两点透视图中,只有原来与Z轴平行的立体上的棱线仍旧保持与Z轴平行,其余的棱线(例如原来与X轴及Y轴平行的棱线)将倾斜(成角)。(2)两点透视图的生成25ppt课件.(3)三点透视图的生成三点透视图的生成方法是:

先使立体绕Z轴旋转一个角度,再绕X轴旋转一个角度(类似于轴测变换),这样使得立体上原平行于三个坐标平面的表面均与投影面XOZ产生一定的倾斜角;向XOZ投影面作透视投影。26ppt课件.变换矩阵

(3)三点透视图的生成27ppt课件.三、视向变换28ppt课件.三、视向变换

1、世界坐标系和观察坐标系前面我们处理图形问题时通常使用的是笛卡尔坐标系,这种坐标系一般称为“世界坐标系”或“用户坐标系”。以观察点(即视点)为原点,以观察点到物体的方向为z轴,以水平向右且与z轴垂直的方向为x轴,与x轴和z轴垂直向上的方向做为y轴,这样所成的坐标系称为观察坐标系。29ppt课件.三、视向变换

建立一个观察坐标系取决于两个因素,一个是观察点的位置,另外一个是观察方向。为了方便研究,通常将观察点到世界坐标系的原点的方向规定为观察方向。2、视向变换把世界坐标系中的点P(x,y,z)变换为观察坐标系中的点Q(x*,y*,z*)的过程称为“视向变换”30ppt课件.三、视向变换1.平移坐标系(设观察点为(x0,y0,z0))ExyzxwzwywO31ppt课件.T1=

1000

0100

0010

-x0–y0-z01x1=x-x0

y1=y-y0

z1=z-z0三、视向变换32ppt课件.三、视向变换2、绕x轴旋转90°ExyzxwzwywO33ppt课件.T2=

1000

00-100100

0001x2=x1

y2=y1•cos90°-z1•sin90°

z2=y1•sin90°+z1•cos90°三、视向变换34ppt课件.3、绕y轴旋转-

角xwzwywOxyz

三、视向变换35ppt课件.T3=cosф0-sinф0

0100

sinф0cosф0

0001sinф=x0/(x02+y02)½

cosф=y0/(x02+y02)½x3=x2•cosф+z2•sinф

y3=y2

z3=x2•sinф-z2•cosф三、视向变换36ppt课件.4、绕x轴逆时针旋转

角xwzwywOxyz

E三、视向变换37ppt课件.T4=1000

0cos

-sin

0

0sin

cos

0

0001x4=x3

y4=y3•cos

+z3•sin

z4=x3•sin

-z3•cos

sinθ=z0/(x02+y02+z02)½

cosθ=(x02+y02)½

/(x02+y02+z02)½三、视向变换38ppt课件.5、改变x轴的方向:使其由原来的指向左边改变为指向右边。T5=

-1000

0100

0010

0001x*=-x4

y*=y4

z*=z4三、视向变换39ppt课件.四、任意点透视变换40ppt课件.四、任意视点透视变换前面介绍的透视变换的数学方法中,重要的问题在于如何选择好变换矩阵中的参数q,以使得生成的透视图的视觉效果较好。(纯数学)下面我们另从直观的角度来讨论透视图的问题。41ppt课件.

设我们在空间观察任意一个点,并在视点和空间点之间设置一个平面作为投影面,那么视点和空间点的连线将穿透该平面而留下一个穿点。我们把该穿点作为空间点在投影面上的投影,称为透视投影。(见例图)四、任意视点透视变换eyeP'P42ppt课件.

为了方便讨论这个问题,要把对象置于合适的坐标系(观察坐标系)中。(见例图)

注:观察坐标系是一个左手系,具体情况参见“视向变换”部分。四、任意视点透视变换OFYXO’X'Y'P'ZZ'P(x,y,z)F即O-O’A43ppt课件.

根据相似比例关系,有:

x’/x=F/z所以x’=F•x/z

y’=F•y/z

(在透视平面内,z’=0)上式说明,只要确定了透视平面的位置(F),对于空间任意点,都可以通过上式计算求得它的透视投影点。并通过连接透视投影点绘制透视图。

四、任意视点透视变换44ppt课件.并且从上式可以看出:

(1)透视坐标与z值成反比,即z值越大,则透视坐标值越小。(这符合实际情况)

(2)F的取值,决定了透视图的比例,可起到放大或者缩小透视图的作用。

(这种方法与上面介绍的矩阵变换法是否相通)四、任意视点透视变换45ppt课件.我们设计一个矩阵,把式x’=F•x/z

y’=F•y/z改写成矩阵形式。[x’y’z’1]=[xyz1]1000 01000001/F

00-1/F0=[x

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论