图形变换-投影变换.ppt

上传人:小飞机 文档编号:6257041 上传时间:2023-10-11 格式:PPT 页数:103 大小:2.69MB
返回 下载 相关 举报
图形变换-投影变换.ppt_第1页
第1页 / 共103页
图形变换-投影变换.ppt_第2页
第2页 / 共103页
图形变换-投影变换.ppt_第3页
第3页 / 共103页
图形变换-投影变换.ppt_第4页
第4页 / 共103页
图形变换-投影变换.ppt_第5页
第5页 / 共103页
点击查看更多>>
资源描述

《图形变换-投影变换.ppt》由会员分享,可在线阅读,更多相关《图形变换-投影变换.ppt(103页珍藏版)》请在三一办公上搜索。

1、4.2 三维图形投影变换,通常图形输出设备(显示器,绘图仪等)都是二维的,所以要将三维坐标系下图形上各点的坐标转化为某一平面坐标系下的二维坐标。投影变换:把三维物体变为二维图形表示的过程称为投影变换。,投影平面,三维场景生成步骤类似于照相机拍摄一张照片的过程,s1、s2、s3可为任意指定平面,指定一个投影面,再取景物面片上的一条线段AB,把线段投影到投影面上,如图:投影中心、观察平面、投影线:,透视投影:物体位置沿收敛于一点的直线变换到观察平面,投影中心到观察平面之间的距离是有限的。平行投影:物体位置沿平行线变换到观察平面上,投影中心到观察平面之间的距离是无限的。,平面几何投影分为透视投影和平

2、行投影,平行投影,根据投影线方向与投影平面的夹角,平行投影分为两类:正投影和斜投影。,4.3.1 正投影,正投影又可分为:三视图和正轴测。当观察平面与某一坐标轴垂直时,得到的投影为三视图;否则,得到的投影为正轴测图。,三视图:正视图、侧视图和俯视图,4.2.1.1 三视图,4.2.1.1 三视图,三视图包括主视图、侧视图和俯视图三种,观察平面分别与Y轴、X轴和Z轴垂直。把三维空间的图形在三个方向上所看到的棱线分别投影到三个坐标面上。再经过适当变换放置到同一平面上。,计算步骤:确定三维物体上各点的位置坐标 引入齐次坐标表示位置坐标 将所作变换用矩阵表示,通过矩阵运算求得三维物体上各点(x,y,z

3、)经变换后的相应点(x,y)(xoy平面)或(y,z)(yoz平面)由变换后的所有二维点绘出三维物体投影后的三视图。,三视图,1、主视图(V)面,将三维物体向xoz面(又称V面)作垂直投影(即正平行投影),得到主视图。,设三维点为(x,y,z),则正向投影点为(x,y,z),三维物体向xoy面(又称H面)作垂直投影得到俯视图,(1)投影变换(2)使H面绕x轴顺时针旋转90(3)使H面沿z方向平移一段距离-n,2、俯视图(H)面,三维型体及其三视图,设三维点为(x,y,z),则正向投影点为(x,y,z),点在H面上投影的坐标变换为:,3、侧视图(W面),侧视图是将三维物体往yoz面(侧面W)作垂

4、直投影。(1)侧视图的投影变换(2)使W面绕z轴逆时针旋转90(3)使W面沿负x方向平移一段距离-k,点的侧面(W)投影变换为:,注意:由上述我们可以看出,三个视图中y均为0,这是由于变换后三个视图均落在XOZ平面上的缘故。因此,可用x,z坐标直接画出三个视图。,正轴测有等轴测、正二测和正三测三种。当观察平面与三个坐标轴之间的夹角都相等时为等轴测;当观察平面与两个坐标轴之间的夹角相等时为正二测;当观察平面与三个坐标轴之间的夹角都不相等时为正三测。,4.2.1.2 正轴测图,正轴测投影方式:先将三维实体分别绕两个坐标轴旋转一定的角度,然后再向由这两个坐标轴所决定的坐标平面作正投影。正轴测投影有三

5、种方式:,二、先将三维实体绕X 轴和Z 轴分别旋转一定的角度,然后再向XOZ平面(V 面)作正投影;三、先将三维实体绕Y 轴和Z 轴分别旋转一定的角度,然后再向YOZ平面(W 面)作正投影。,一、先将三维实体绕X 轴和Y 轴分别旋转一定的角度,然后再向XOY平面(H 面)作正投影,最常用的是第二种方式,第二种方式的正轴测投影过程为:将三维实体绕Z轴逆时针转角;将三维实体绕X轴顺时针转角;向XOZ平面(V面)作正投影。,1、正轴测投影变换矩阵,2轴向变形系数,原坐标轴经轴测投影变换后,其在V面上的投影长度发生变化,我们把OX/OX=x,OY/OY=y,OZ/OZ=z 分别称为OX轴,OY轴和OZ

6、轴的轴向变形系数。,为了便于讨论,沿X,Y,Z方向各取一单位长度,可得三点的齐次坐标分别为:A1 0 0 1,B0 1 0 1,C0 0 1 1。对其进行正轴测投影变换,变换得:,X,y,z三个轴向的变形系数为:,3正等轴测投影变换 所谓正等轴测投影就是当x=y=z时所得到的正等轴测图。由x=y=z 得:,由,得:,取,在正轴测投影变换中,一般地,即 所以:,取,将 代入 中得:,将 代入 得到正等轴测投影变换矩阵为:,轴间变形系数:,因此正等轴测投影变换就是用图形点集X Y Z 1TISO即可。,例:若有一个边长为100的正六面体,其各顶点坐标为:O(0,0,0),A(0,0,100),B(

7、100,0,100),C(100,100,100),D(0,100,100),E(100,0,0),F(100,100,0),G(0,100,0)。,现对它进行正等轴测投影,4正二轴测投影变换,由 得:,代入,解得:,正二轴测图其轴向变形系数有如下关系:,则:,将 代入,得正二轴测投影变换矩阵:,轴向变形系数:,因此正二轴测投影变换就是用图形点集X Y Z 1T正二即可。,例:若有一个边长为100的正立方面体,其各顶点坐标为O(0,0,0),A(0,0,100),B(100,0,100),C(100,100,100),D(0,100,100),E(100,0,0),F(100,100,0),G

8、(0,100,0)。,对立方体进行正二轴测投影变换为,斜投影图,即斜轴测图,是将三维物体向一个单一的观察平面作平行投影,但投影方向不垂直于观察平面所得到的平面图形。常用的斜轴测图有斜等测图和斜二测图。,4.2.2 斜投影,斜平行投影,斜轴测图的形成,即:,斜等测投影变换矩阵一,斜等测投影变换矩阵二,斜二测投影变换矩阵一,斜二测投影变换矩阵二,透视投影是一种中心投影法,在日常生活中,我们观察外界的景物时,常会看到一些明显的透视现象。如:站在笔直的大街上,向远处看去,会感到街上具有相同高度的路灯柱子,显得近处高,远处矮,越远越矮。这些路灯柱子,即使它们间的距离相等,但是视觉产生的效果是近处的间隔显

9、得大,远处的间隔显得小,越远越密。观察道路的宽度,也会感到越远越窄,最后汇聚于一点。这些现象,称之为透视现象。,透视投影变换,图中,AA,BB,CC为一组高度和间隔都相等,排成一条直线的电线杆,从视点E去看,发现 AEABEBCEC若在视点E与物体间设置一个透明的画面P,则在画面上看到的各电线杆的投影aabbccaa即EA,EA与画面P的交点的连线;bb即为EB,EB与画面P的交点的连线。cc 即为EC,EC与画面P的交点的连线。近大远小,产生透视的原因,可用下图来说明:,若连a,b,c及a,b,c各点,它们的连线汇聚于一点。然而,实际上,A,B,C与A,B,C的连线是两条互相平行的直线,这说

10、明空间不平行于画面(投影面)的一切平行线的透视投影,即a,b,c与a,b,c的连线,必交于一点,这点我们称之为灭点。,透视投影投影中心与投影平面之间的距离为有限特点:产生近大远小的视觉效果,由它产生的图形深度感强,看起来更加真实。灭点:不平行于投影平面的平行线,经过透视投影之后收敛于一点,称为灭点.主灭点:平行于坐标轴的平行线产生的灭点一点透视、两点透视、三点透视,主灭点数是和投影平面切割坐标轴的数量相对应的,即由坐标轴与投影平面交点的数量来决定的。如投影平面仅切割z轴,则z轴是投影平面的法线,因而只在z轴上有一个主灭点,平行于x轴或y轴的直线也平行于投影平面,因而没有主灭点。,y,x,z,o

11、,一点透视(平行透视),人眼从正面去观察一个立方体,当z轴与投影平面垂直时,另两根轴ox,oy轴平行于投影平面。这时的立方体透视图只有一个主灭点,即与画面垂直的那组平行线的透视投影交于一点。,二点透视(成角透视),人眼观看的立方体是绕y轴旋转一个角度之后,再进行透视投影。三坐标轴中oy轴与投影平面平行,而其它两轴与画面倾斜,这时除平行于oy轴的那组平行线外,其它两组平行线的透视投影分别在投影平面的左右两侧,作出的立方体透视图产生两个主灭点。,三点透视(斜透视),此时,投影平面与三坐标轴均不平行。这时的三组平行线均产生灭点。,透视举例,1、一点透视投影变换矩阵,(1)设z轴上有一观察点(即视点)

12、V(0,0,h)从V点出发将空间任意一点P(x,y,z)投影到XOY平面上得到P(x,y,0)由相似三角形可知:,令:,变换矩阵为 齐次坐标变换 它可以看作是先作变换,再作变换 的合成。,在透视变换Tr下有:,当z时,x 0,y 0,z-h(0,0,-h)为该透视的一个主灭点。,(2)视点在(h,0,0)的透视变换,主灭点在(-h,0,0)透视投影变换矩阵为:,(3)视点在(0,h,0)的透视变换,主灭点在(0,-h,0)透视投影变换矩阵为:,在变换矩阵中,第四列的p,q,r起透视变换作用,用Tp、Tq、Tr、表示三个透视投影变换矩阵,当p、q、r中有一个不为0时的变换。假定q!=0,p=r=

13、0.对空间上任一点(x,y,z)进行透视变换结果如下:对该结果进行规范化处理后,便得:,习惯上使用XOZ面作为投影平面,为了增强透视效果,通常将物体置于画面V之后,水平面H之下,若物体不在该位置时,应首先把物体平移到此位置,然后再进行透视投影变换。q的选择决定了视点的位置,一般选择视点位于画面V之前。,T1=Tt*Tq*Txoz=,例:有一个边长为100的正六面体,其各顶点坐标为O(0,0,0),A(0,0,100),B(100,0,100),C(100,100,100),D(0,100,100),E(100,0,0),F(100,100,0),G(0,100,0)。,令a=60,b=-120

14、,c=-120,q=-0.5,在变换矩阵中,第四列的p,q,r起透视变换作用当p、q、r中有两个不为0时的透视变换称为二点透视变换。假设p!=0,q!=0,r=0,将空间上一点(x,y,z)进行变换,可得如下结果:,、二点透视投影变换矩阵,由上式可看出:当x-时,在X轴上 处有一个灭点;当y-时,在Y轴上 处有一个灭点;,经齐次化处理后得:,1/p,1/q,为了使二点透视后的投影有一恰当的位置,通常采取平移、透视(Tp和Tq)、绕Z轴正转 角、再向XOZ平面投影。平移:设平移量分别为a、b、c;透视变换:变换矩阵为Tpq;绕Z轴正转 角;向XOZ平面投影。,变换结果如图所示。,若p,q,r都不

15、为0,则可得到有三个灭点的三点透视。,经齐次化处理后得:,3、三点透视投影变换矩阵,由上式可看出:当x-时,在X轴上1/p处有一个灭点;当y-时,在Y轴上1/q处有一个灭点;当z-时,在Z轴上1/r处有一个灭点;,4.3 窗口视区变换,4.3.1 坐标系,世界坐标系(World Coordinate System,简称WC)是最常用的坐标系,它是一个符合右手定则的直角坐标系,其中图4.25(a)是定义二维图形的坐标系,图4.25(b)是定义三维物体的坐标。,1世界坐标系,图4.25 世界坐标系,世界坐标系是用来定义用户在二维或三维世界中的物体,因此也称为用户坐标系。理论上,世界坐标系是无限大且

16、连续的,即它的定义域为实数域。,图形输出设备(如显示器、绘图仪)自身都有一个坐标系称之为设备坐标系(Device Coordinate System),简称DC或物理坐标系。,2设备坐标系,设备坐标系是一个二维平面坐标系,它的度量单位是步长(绘图仪)或象素(显示器),因此它的定义域是整数域且是有界的。例如,对显示器而言,分辩率就是其设备坐标系的界限范围。,由于用户的图形是定义在用户坐标系里,而图形的输出定义在设备坐标系里,它依赖于具体的图形设备。由于不同的图形设备具有不同的设备坐标系,且不同设备之间坐标范围也不尽相同.例如:分辨率为1024768的显示器,其屏幕坐标范围为:X方向01023,Y

17、方向0767,而分辨率为640480的显示器,其屏幕坐标范围为:X方向0639,Y方向0479,显然这使得应用程序与具体的图形输出设备有关,给图形处理及应用程序的移植带来不便。,3规格化设备坐标系,为了便于图形处理,有必要定义一个标准设备,我们引入与设备无关的规格化的设备坐标系(Normalized Device Coordinate System,简称NDC),采用一种无量纲的单位代替设备坐标,当输出图形时,再转换为具体的设备坐标。,规格化设备坐标系的取值范围为:左下角(0.0,0.0),右上角(1.0,1.0)。用户的图形数据经转换成规格化的设备坐标系中的值,使应用程序与图形设备隔离开,增

18、强了应用程序的可移值性。,在图形处理中,上述三种坐标系的转换关系如图4.26所示。,图4.26 WC、NDC和DC三种坐标系的转换,4.3.2 窗口与视区,1窗口,在计算机中,窗口是图形的可见部分,是在用户坐标系中定义的确定显示内容的一个矩形区域,只有在这个区域内的图形才能在设备坐标系下输出,而窗口外的部分则被裁掉。,如图4.27所示,我们用矩形的左下角点的坐标(Wxl,Wyb)和右上角点的坐标(Wxr,Wyt)来确定窗口的大小和位置,通过改变窗口的大小、位置和比例,可以方便地观察局部图形,控制图形的大小。,图4.27 窗口的定义,视区是在设备坐标系(通常是屏幕)中定义的一个矩形区域,用于输出

19、窗口中的图形。视区决定了窗口中的图形要显示于屏幕上的位置和大小。,2.视区,视区是一个有限的整数域,它应小于等于屏幕区域。这样可以在同一屏幕上定义多个视区,用来同时显示不同的图形信息。例图4.28表示在同一屏幕上定义了四个视区,分别代表一个机械零件的正视图,侧视图、俯视图和轴测图。,图4.28 一个三维物体的多视图,4.3.3 窗口-视区变换,由于窗口和视区是在不同的坐标系中定义的,因此,在把窗口中的图形信息送到视区去输出之前,必须进行坐标变换,即把用户坐标系的坐标值转化为设备(屏幕)坐标系的坐标值,这个变换即为窗口-视区变换。,如图4.29所示,设在用户坐标系下定义的窗口为:左下角点坐标(W

20、xl,Wyb),右上角点坐标(Wxr,Wyt);在设备坐标系中定义的视区为:左下角点坐标(Vxl,Vyb),右上角点坐标(Vxr,Vyt)。,图4.29 窗口-视区变换,由图可知,在用户坐标系中的点(xw,yw)投影到设备坐标系中的点(xv,yv),有下列等式:,(4-1),由(5-1)式得窗口中一点W(xw,yw)变换到视区中对应的点V(xv,yv)二者之间的关系为:,(4-2),设:,则(5-2)式可写成:,(4-3),写成矩阵为:,(4-4),4.4 视向变换,4.4.1 世界坐标系和观察坐标系,这里再引进一种新的参考坐标系,这种坐标系比较符合人们在三维空间中观察物体和绘图的习惯。这个习

21、惯包括这样两点:,当观察空间某一物体时,该物体与视点之间距离的大小反映了物体离我们的远近,称该距离为“观察深度”或简称深度。这个深度应该在新坐标系里的某个坐标轴上得到相应的体现:即深度大,该坐标值应大;反之,深度小,则该坐标值应小。,我们平常在图纸上绘图时,二维绘图坐标系的位置一般使坐标系的原点在图纸的左下角,然后让x轴自原点水平向右,让y轴自原点垂直向上。这比较符合人们平常看图和作图的习惯。为满足这一习惯,我们可以让新的坐标系中有一根坐标轴自左水平向右,而让另一根坐标轴自下垂直向上,以使这两根坐标轴确定的坐标平面和二维绘图平面相对应,使三维立体在这个坐标平面上产生的投影能与图形输出平面上输出

22、的图形之间产生直观的对应。这样就给三维立体的二维表示带来了极大的方便。,显然,满足以上要求的坐标系列化可以通过以下的方法来设置:,把坐标系原点设置在观察点(即视点处),让坐标系中的一根坐标轴从该原点出发,顺着观察方向指向远方。那么该坐标轴上的坐标就反映了空间立体的观察深度的大小,该轴即为深度坐标轴,在这里我们指定由z轴来做深度坐标轴。,然后让另外两根坐标轴中的一根自该原点水平向右;另一根自原点向上。为了和图形输出平面坐标系统直接对应,把水平向右的轴设置为x轴,而把向上的坐标轴设置为y轴。,这个新的参考坐标系是一个符合左手规则的笛卡尔坐标系,我们称这个坐标系为“观察坐标系”。,建立一个观察坐标系

23、,主要取决于两个因素:一个是观察点的位置,因为观察点的位置决定了坐标系原点位置;另一个是观察方向,它决定了深度坐标轴的指向。,观察点和观察方向是可以由观察者随意定的,即观察点可以设置在空间的任意位置,观察方向可以朝向任何一个方向,于是观察坐标系也是随意的。为了简化问题,我们在这里作了一个假定:观察点可以设置在空间的任何位置,但观察方向总是指向世界坐标系的原点。,视向变换矩阵,把世界坐标系中的点P(x,y,z)转换为观察坐标系中的点P*(x*,y*,z*)的过程称为“视向变换”。视向变换也是一种坐标变换,可以用矩阵的形式表示为:,x*y*z*1=x y z 1V式中的V称为视向变换矩阵。因为视向

24、变换是不能靠一次单一的简单变换就可以实现的,所以视向变换矩阵V是一个包括平移和旋转的多次变换的级联。,视向变换矩阵V的推导过程如下:,因为观察坐标系的原点设置在观察点,所以一旦选定了观察点,观察坐标系的原点也就确定了。这一步把坐标系原点变到观察点位置的变换,是通过把坐标系原点从世界坐标系的原点平移到观察点E(x,y,z)来完成的。,图4.30 坐标平移(左)和绕x轴旋转(右),第二步是将经过平移后的坐标系绕x轴逆时针旋转90,改变y轴和z轴的指向,使得y轴垂直向上,z轴垂直指向xwozw坐标平面,如图4.30(右)所示的那样,该旋转变换矩阵为:,第三步是将经过上两次变换后的坐标系绕y轴顺时针旋

25、转一个值为的角度,使得新坐标系的z轴垂直指向原来世界坐标系的zw 轴,见图4.31(左)所示。,其矩阵中的三角函数值可以用直角三角形的关系求得。即:,第四步是将经过以上三次变换后的坐标系再一次绕x轴逆时针旋转角,将新坐标系的z轴指向原世界坐标系的原点,见图4.31(右)所示。,图4.31 绕y轴旋转(左)和绕x轴旋转(右),这次旋转的变换矩阵为:,同样可以由直角三角形的关系推导出矩阵中三角函数的值:,经过以上的四次变换后,我们已经使得新的坐标系的原点放置到了观察点,并使z轴指向了原世界坐标系的原点(观察点),y轴指向上面。,唯一所差的是x轴还未变为指向右边。所以这最后的一步变换是要调整x轴的指向,使其由原来指向左边改变成指向右边。从而最终使得坐标系由原来的右手系改变成了左手系,完成了视向变换的全过程。实现改变x轴指向的变换矩阵为:,先后经过上述的五次变换,实现了由原来世界坐标系到观察坐标系的转变,从而完成了视向变换,所以视向变换矩阵V就是上面五个基本变换矩阵的级联,即:,x,y,z为观察点的三坐标值。,式中:,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号