版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第六章三维图形变换与三维观察6.1三维几何变换6.2投影变换6.3三维图形裁剪6.4三维观察体的规范化变换6.5三维观察流程
6.1三维几何变换
6.1.1平移
若三维空间中点P′(x′,y′,z′)是由点P(x,y,z)在
x,y和z轴方向分别移动距离tx,ty和tz得到的,则这两点坐标间的关系为
x′=x+tx,y′=y+ty,z′=z+tz
(6.1)写成矩阵形式为三维空间中物体的平移是通过平移物体的各个点来实现,对于一组多边形面表示的物体,可将表面的各顶点作平移,然后绘制更新后的新位置。6.1.2缩放
设点P(x,y,z)相对于坐标原点经缩放变换后得到点P′(x′,y′,z′),则这两点坐标间的关系为(6.4)缩放系数sx、sy和sz可以是任何正数。缩放系数值小于1时,物体的尺寸缩小;值大于1时,物体的尺寸放大;值等于1时,物体尺寸不变。当sx、sy和sz相等时,会产生保持物体相对比例的一致缩放;sx、sy和sz不等时,则会产生差值缩放。相对于一给定点(xf,yf,zf)的缩放变换可用下列变换序列来表示:
(1)平移给定点至原点。
(2)用式(6.4)相对于坐标原点缩放物体。
(3)平移给定点至原始位置。
任一点的缩放变换矩阵表示形式可以用“平移—缩放—平移”变换组合表示如下:(6.5)6.1.3旋转
1.绕坐标轴旋转
设旋转角度为θ,绕坐标轴的逆时针旋转为正向旋转,如图6.2所示。图6.2旋转轴为坐标轴正半轴(1)绕z轴的旋转表示式为(6.6(2)绕x轴的旋转表示式为(6.7)(3)绕y轴的旋转表示式为(6.8)2.一般三维旋转图6.3新坐标系它们分别对应的单位向量为根据右手规则,o
轴的方向向量为(6.9)(6.10)(6.11)参照上面所讲的绕通过坐标原点的任意轴作旋转变换的实现方法,根据式(6.6)、式(6.9)以及式(6.11),可得变换公式为(6.12)另一种思路是先确定任意轴的方向余弦与旋转变换的关系,然后再用组合变换的思想实现绕任意轴的旋转变换。如图6.4所示,设有空间任意轴ON,其方向余弦分
别为
n1=cosα,n2=cosβ,n3=cosγ为实现空间点绕任意轴ON的旋转变换,首先要把
ON轴绕z轴旋转一个角度-θ2,再绕y轴旋转一个角度
-θ1,以便使ON轴与z轴相重合,如图6.4所示。此时,空间点绕ON轴的旋转就变成和绕z轴的旋转一样。然后,再把ON轴反旋转回原来的位置。其中转角θ1和θ2的确定是关键,它们可通过方向余弦来求得。图6.4绕任意组的旋转在oz轴上取一单位向量[0011]T,将该单位向量先绕y轴旋转θ1角,然后再绕z轴旋转θ2角,使之与ON轴
线重合。这样,便可以列出ON轴线的方向余弦与转角θ1和转角θ2之间的关系:于是,空间一点绕任意轴ON旋转θ角的变换可分为三步进行:
(1)通过两次旋转变换,使ON轴与坐标系z轴重合。(2)绕z轴旋转θ角。
(3)通过两次逆旋转变换,使ON轴转回到原来的位置。因此,整个变换过程是5次简单基本变换的级联。
(1)绕z轴旋转-θ2角,其变换矩阵为:(6.14)
(2)绕y轴旋转-θ1角,其变换矩阵为:(6.15)
(3)绕z轴旋转θ角,其变换矩阵为:(6.16)
(4)绕y轴旋转θ1角,其变换矩阵为:(6.17)
(5)绕z轴旋转θ2角,其变换矩阵为:(6.18)6.1.4对称
(1)关于坐标平面xoy的对称,其变换公式是(6.19)
(2)关于坐标平面xoz的对称,其变换公式是(6.20)
(3)关于坐标平面yoz的对称,其变换公式是(6.21)6.1.5错切
(1)沿x轴方向含y的错切指错切平面沿x轴方向错移并且离开y轴。变换矩阵为(6.22)(2)沿x轴方向含z的错切指错切平面沿x轴方向错移并且离开z轴。变换矩阵为(6.23)(3)沿y轴方向含x的错切指错切平面沿y轴方向错移并且离开x轴。变换矩阵为(6.24)(4)沿y轴方向含z的错切指错切平面沿y轴方向错移并且离开z轴。变换矩阵为(6.25)(5)沿z轴方向含x的错切指错切平面沿z轴方向错移并且离开x轴。变换矩阵为(6.26)(6)沿z轴方向含y的错切指错切平面沿z轴方向错移并且离开y轴。变换矩阵为(6.27)6.1.6复合变换
和二维变换一样,我们用变换序列中的各次运算的矩阵乘积来形成复合变换。该合并从右到左实现,其中最右边的矩阵是第一个作用于物体的变换,最左边的变换是最后一个变换。一系列基本的三维几何变换组合成了一个复合变换矩阵,然后用它来对物体的坐标进行定义。
6.2投影变换
6.2.1透视投影及其分类
透视投影变换由投影平面和投影中心所确定。物体投影的大小和投影中心到物体的距离成反比。任何一束不平行于投影平面的平行线,其透视投影后将会聚到一点,该点称为灭点(VanishingPoint)。在三维空间中平行线只会在无穷远点处相交,所以灭点也可看作是无穷远点的透视投影。在所有灭点中,平行于三个坐标轴之一的直线束的灭点称为主灭点(PrincipalVanishingPoint),主灭点最多只能有三个。透视投影可按主灭点的数目分为一点透视、两点透视和三点透视。
(1)一点透视。投影平面只和一个坐标轴相交,即投影平面与坐标面平行。所生成的物体投影图真实感较差。
(2)两点透视。投影平面和二个坐标轴相交,即投影平面与一个坐标轴平行。所生成的物体投影图具有较好
的真实性,比较容易构造。常用于建筑工程、工业设计和广告等领域。
(3)三点透视。投影平面和三个坐标轴相交,这类透视投影的构造比两点透视难一些,用的较少。6.2.2透视投影的确定
令z′=0,得代入式(6.28)的前两式,可求得点Q
的透视投影为(6.29)写成矩阵形式,则透视投影变换为(6.30)投影平面上投影点的非齐次坐标为(6.31)有时为了三维裁剪或消隐的目的,常常要把一个对象的透视投影图看成是另一个对象在同一投影平面上的正视图,且要求两个对象对应点的z坐标分量排序一致。此外,还要求原对象上的直线在另一个对象上也是直线,那么后一个对象可以通过前一个对象做射影变换得到。该射影变换由式(6.31)和式(6.32)构成。式(6.32)如下:其中A、B为常数。显然,射影变换把三维空间的直线也变成了直线。(6.32)6.2.3平行投影及其分类
1.正平行投影
(1)正投影。投影平面垂直于某一坐标轴,因此,该坐标轴方向就是投影方向。最常见的正投影有六种:前(主)视图、后视图、左(侧)视图、右视图、顶(俯)视图、底(仰)视图,工程制图中常用前视图、侧视图和顶视图三种。正投影能较好地描述物体的一个面,但却丢失了物体
的许多三维信息,即使使用所有的六种正视图,有时也难以重构该物体的三维结构。(2)正轴侧投影(AxonometricOthographicProjection)。投影平面与任一坐标轴不垂直,因而,它所描述的不仅是物体的一个面,有时是两个面或多个面,所以具有一定的立体感。在正轴侧投影中,线的平行性保持不变,平行于同一坐标轴的线段均以相同的比例缩放,其缩放系数与投影方向有关,但正轴侧投影中的角度经投影后将发生变化。(3)等轴侧投影(IsometricProjection)。它是最常用的正投影之一,投影平面和三个坐标轴的截距相同,或者说投影方向与三个坐标轴的夹角相等。若投影平面的法向量为(a,b,c),则|a|=|b|=|c|,所以有八种等轴侧投影。它们组成四对,每对中的两个投影平面法向相反,得到的投影图互相对称(未消隐)。在等轴侧投影中,沿三个坐标轴方向物体有相同的变形系数,即沿着轴向的量度具有相同的比例系数,三个坐标轴投影之间的夹角为120°。
2.斜平行投影
在斜平行投影中,投影方向和投影平面不垂直,两种最常用最重要的斜平行投影为:斜等侧投影(AvalierProjection)和斜二侧投影(Cabinet)。
(1)斜等侧投影的投影平面和一坐标轴垂直,投影方向和投影平面成45°角,因此,与投影平面垂直的直线段的投影与该直线段本身等长。
(2)斜二侧投影的投影平面和一坐标轴垂直,投影方向和投影平面成arctg1/2度角,因此,与投影平面垂直的直线段的投影长度为实际长度的1/2。因而,该轴向的变形系数为1/2,这可使物体的立体感更好一些,与人的视觉经验较一致。6.2.4平行投影的确定
(6.33)令z′=0,则有t=-z/zd,代入式(6.33)的前两式,可得点Q的平行投影为(6.34)写成矩阵形式,则平行投影变换为(6.35)投影平面上投影点的非齐次坐标为(6.36)6.2.5一般投影变换
垂直的平面(图6.5)。图6.5观察坐标系
2.坐标系变换公式
设观察坐标系oxyz的原点o
在用户坐标系oxyz中的坐标为(x0,y0,z0),坐标轴ox、oy
和oz
的单位方向向量
的用户坐标分别为(a11,a12,a13)、(a21,a22,a23)和(a31,a32,a33),那么由观察坐标系的确定可知(6.38)
oz
轴的单位方向向量为(6.39)而ox轴的方向和向量U×N一致,所以(6.40)根据右手规则,oy轴的单位方向向量为(6.41)从而,从用户坐标系到观察坐标系的坐标变换公式是(6.42)写成齐次坐标表示,则有其中(6.43)(6.44)
3.透视投影变换公式
设透视中心C在用户坐标系oxyz中的坐标为(xc,yc,zc),那么由式(6.43)可知,C在观察坐标系中的坐标
(xc,yc,zc)确定式为(6.45)由透视变换公式(6.30)、式(6.31)和坐标变换公式(6.43)可知(6.46)写成非齐次坐标表示,则有(6.47)考虑到式(6.31)和式(6.32)确定的射影变换公式,同样可以建立从三维空间oxyz到三维空间oxyz
的射影变换公式为6.48)其非齐次坐标表示为6.49)
4.平行投影变换公式
因此,D的观察坐标系坐标由下式确定(6.50)根据平行投影变换公式(6.35)和坐标变换公式(6.43),可得平行投影变换公式为(6.51)相应的非齐次坐标表示为(6.52)同透视变换一样,利用式(6.36)和式(6.43)也可确定从三维用户空间到三维观察空间的射影变换式:其非齐次坐标表示为(6.54)
6.3三维图形裁剪
6.3.1三维观察体
在摄影中,照相机所使用的镜头类型是决定进入胶片的摄入景物多少的一个因素,广角镜头比一般镜头所摄入的景物多。同样,在三维观察中,观察平面中的矩形观察窗口或投影窗口的使用具有与相机镜头相同的效果。投影平面中观察窗口的边平行于x
轴和y
轴,观察边界位置由观察坐标给出,如图6.6所示。观察窗口可以位于观察平面的任何位置。图6.6观察平面上的窗口描述给出观察窗口描述后,我们可以利用窗口边界来设置观察体。只有在观察体中的物体才能在输出设备中显示或绘制,其他所有物体均被裁剪掉。观察体的大小依赖于窗口的大小,而观察体的形状则取决于生成显示的投影类型。不管何种情况,观察体的四侧面都是过窗口边界的平面。对平行投影而言,观察体的四侧面会形成无限长的管道,如图6.7所示。对透视投影来说,观察体是顶点在投影中心的四棱锥(图6.8)。图6.7平行投影观察体图6.8透视投影观察体
两个平面都必须在投影中心的同一侧,后平面与投影中心的距离远于前平面的距离,所产生的观察体包括前后平面共6个平面,如图6.9所示。在平行投影里,6个面形成一平行六面体,透视投影中,前后平面将无限四棱锥截成四棱台。图6.9前、后平面和顶、底及侧面围成的观察体6.3.2三维裁剪
三维的规范化观察体分为两种,对于平行投影,规范化观察体为一单位立方体,由x=0,x=1,y=0,y=1,z=0,z=1六个平面围成。透视投影时,其规范化观察体
由平面x=±z,y=±z和z=zmin,z=1所围成(图6.10)。图6.10规范化观察体
1.Sutherland-Cohen算法
三维图形裁剪的Sutherland-Cohen算法和二维裁剪一样,对窗口的六个面所分的27个区域进行编码。每一个区域的点采用同一编码,编码由六位组成。编码规则如下:直线段和观察体的边界面交点计算时采用参数方程,例如,对于起点和终点分别为P0=(x0,y0,
z0)、P1=
(x1,y1,z1)的直线段,其参数方程为:
x=x0+(x1-x0)t,y=y0+(y1-y0)t,z=z0+(z1-z0)t,0≤t≤1和规范化观察体的边界面求交时,例如边界面为y=1,可由y0+(y1-y0)t′=1求得交点参数t′=(1-y0)/(y1-y0),代入直线段参数方程,即可求出交点的坐标。和平面x=z求
交点时,其交点参数则为代入直线段参数方程即可求得交点坐标。(6.55)
2.梁友栋-Barsky算法
三维图形裁剪的梁友栋-Barsky算法也是对二维图形裁剪的推广。当规范化观察体为立方体时,可直接得出这种推广,即:当规范化观察体为棱台时,则
6.4三维观察体的规范化变换
6.4.1平行投影情况下的变换
第一步:将点P1移至坐标原点,变换的矩阵为(6.56)图6.11平行投影的观察体图6.12平行六面体在二坐标平面上的投影第二步:对平行六面体沿x
方向和y方向做错切变换,以其使变为长方体,其错切变换的变换矩阵是:(6.58)第三步:将第二步的长方体变为单位立方体,这个变换的变换矩阵为(6.59)6.4.2透视投影下的变换
第一步:将投影中心移至坐标原点,其变换的矩阵为
(6.61)图6.13透视投影的观察体变换后,棱台oxz平面和
oyz
平面上的投影如图6.14
所示。图6.14棱台在二坐标平面上的投影第二步:沿x
方向和方向y
做错切变换,把经过
TR变换后的棱台变成正棱台,该变换矩阵为(6.62)第三步:做缩放变换,使正棱台变为规范化观察体,其变换矩阵是(6.63)6.5三维观察流程
考虑到实时动态图形在实时模拟等方面的重要性以及图形系统的完整性,一般地,三维图形的显示流程如图6.15所示。观察图6.15所示流程,除
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 呼伦贝尔学院《二外日语(一)》2021-2022学年第一学期期末试卷
- 红河学院《小学数学教学设计》2022-2023学年第一学期期末试卷
- 《圣彼得教堂》课件
- 《头面部神经疾病》课件
- 2024上海租房合同书范文
- 2024个人房屋维修服务合同
- 《培训课件》excel达人装b指南
- 心血管介入治疗中的护理
- 储能电池系统优化设计、智能管控及测评技术
- 青岛市智能建造项目评价指标
- (完整版)二年级乘除法竖式计算
- -精神病医院设置基本标准
- 起名常用字(分五行、笔画及宜忌解释)
- A01083《纳税人(扣缴义务人)基础信息报告表》
- 元旦、春节前我市建筑领域农民工工资支付工作通知
- 敏捷开发测试规范V01
- 最新国家开放大学电大《MySQL数据库应用》网络核心课实验训练2及4答案
- 洁净车间换气次数规定及记录表格
- 店店长交接表---7天连锁酒店
- 消防报警主机操作步骤
- 广东省高级人民法院民一庭关于建设工程施工合同纠纷案件若干问题的意见
评论
0/150
提交评论