首页 理论教育 透视基本原理与程序示意图

透视基本原理与程序示意图

时间:2023-11-01 理论教育 版权反馈
【摘要】:LP6-13.lsp程序图6-28 一点透视程序运行后得到的图形2.两点透视两点透视的特点是平行六面体在作了透视变换后,只有垂直方向棱线的投影仍是互相平行的,另外两个方向棱线的投影分别交于灭点。3)进行透视变换,使立体产生变形。作三点透视的步骤如下:1)将立体平移到适当位置。LP6-15.lsp程序图6-30 三点透视程序运行后得到的图形

透视基本原理与程序示意图

进行透视投影要考虑好图面布局,以避免立体的平面或直线积聚成直线或点而影响直观性。具体地说,就是要考虑以下几点:

1)立体与画面的相对位置。

2)视距,即视点与画面的距离。

3)视点的高度。

1.一点透视

作一点透视的具体步骤是:先将立体平移到适当位置,再进行透视变换,然后向画面作正投影,这可以将平移矩阵、透视变换矩阵及向XOY面的正投影变换矩阵级联而实现。这三个矩阵级联后形成一点透视变换矩阵T1,即

978-7-111-46865-3-Chapter06-77.jpg

若某点的坐标为[xyz],它的一点透视变换可写成

978-7-111-46865-3-Chapter06-78.jpg

式中 l——将立体沿X方向移动的距离;

m——将立体沿Y方向移动的距离;

n——将立体沿Z方向移动的距离;

r——视点取在Z轴上,使视距d=-1/r

相机而言,视距即为相机焦距,由相机所定,z可以理解为物体与画面的距离,画面即相机胶片平面,相机透镜中心是投射中心,设为坐标原点。

例如,当l=0.8,m=-1.6,n=-2,r=-0.4时,求立方体的一点透视。

用矩阵级联的方法,即

978-7-111-46865-3-Chapter06-79.jpg

一点透视的各点坐标也可以用公式978-7-111-46865-3-Chapter06-80.jpg978-7-111-46865-3-Chapter06-81.jpg来求,当各参数条件不变,可算得立方体各点在透视图上的坐标与用矩阵级联的方法算得的结果相同。将透视图各点计算公式变换为

978-7-111-46865-3-Chapter06-82.jpg

z自变量,将已知立方体各点在透视图上的坐标代入上式,即可求得立方体各点的空间坐标。

za=0时

978-7-111-46865-3-Chapter06-83.jpg

zb=0时

978-7-111-46865-3-Chapter06-84.jpg

zc=0时

978-7-111-46865-3-Chapter06-85.jpg

zd=0时

978-7-111-46865-3-Chapter06-86.jpg

ze=1时

978-7-111-46865-3-Chapter06-87.jpg

zf=1时

978-7-111-46865-3-Chapter06-88.jpg

zg=1时

978-7-111-46865-3-Chapter06-89.jpg

zh=1时

978-7-111-46865-3-Chapter06-90.jpg

一点透视程序LP6-13.lsp可通过扫描二维码观看,程序运行后得到的图形如图6-28所示。

978-7-111-46865-3-Chapter06-91.jpg

LP6-13.lsp程序

978-7-111-46865-3-Chapter06-92.jpg

图6-28 一点透视程序运行后得到的图形

2.两点透视

两点透视的特点是平行六面体在作了透视变换后,只有垂直方向棱线的投影仍是互相平行的,另外两个方向棱线的投影分别交于灭点。作两点透视时要将立体绕Y轴旋转一个φ角,使立体的主要平面不平行于画面,经透视变换,使立体产生变形,然后向画面作正投影,如图6-26所示。如果立体的底面置于XOZ平面上,这时按上述步骤得到的透视,其底面积聚成一条直线,直观性较差,为此,必须先将立体作适当平移。其一般步骤如下:

1)将立体平移到适当位置,使视点有一定高度,且使立体的主要表面不会积聚成线。

2)将立体绕Y轴旋转一个φ角,一般使转角φ<90°,旋转方向仍按右手规则。

3)进行透视变换,使立体产生变形。为了符合人的视觉,使变形后的立体渐远渐小,一般使p<0,r<0。

4)经上述变换后,向画面(XOY)进行正投影,即得透视。(www.xing528.com)

上述步骤用矩阵表示,则得两点透视变换矩阵T2,即

978-7-111-46865-3-Chapter06-93.jpg

对空间各点作两点透视,其在透视图上的坐标也可写为

978-7-111-46865-3-Chapter06-94.jpg

当已知p=-0.1,q=0,r=-0.45,φ=30°,l=n=0,m=-1.4时,有

978-7-111-46865-3-Chapter06-95.jpg

z=0时,有

978-7-111-46865-3-Chapter06-96.jpg

z=1时,有

978-7-111-46865-3-Chapter06-97.jpg

对立方体而言,其各点的空间坐标与透视图坐标分别为

978-7-111-46865-3-Chapter06-98.jpg

z为自变量,根据立方体各点透视图坐标反求其空间坐标的公式为

978-7-111-46865-3-Chapter06-99.jpg

z=0时,有

978-7-111-46865-3-Chapter06-100.jpg

z=1时,有

978-7-111-46865-3-Chapter06-101.jpg

将立方体各点ABC、…透视图坐标代入反求公式,即可得立方体各点ABC、…的空间坐标,请读者自行验证。

两点透视程序LP6-14.lsp可通过扫描二维码观看,程序运行后得到的图形如图6-29所示。

3.三点透视

三点透视就是有三个灭点的透视,如图6-27所示,这时,透视变换矩阵中的元素pqr都不等于零。平面六面体在三点透视图中三个方向的棱线分别汇交于三个不同的灭点。作三点透视的步骤如下:

1)将立体平移到适当位置。

2)将立体进行透视变换。

3)使立体先绕Z轴旋转θ角,再绕X轴旋转φ角。

978-7-111-46865-3-Chapter06-102.jpg

LP6-14.lsp程序

978-7-111-46865-3-Chapter06-103.jpg

图6-29 两点透视程序运行后得到的图形

4)将变形而又旋转后的立体向画面进行正投影即得三点透视图。

用变换矩阵来表示上述作图过程,就得到三点透视变换矩阵T3,即

978-7-111-46865-3-Chapter06-104.jpg

978-7-111-46865-3-Chapter06-105.jpg

即有

978-7-111-46865-3-Chapter06-106.jpg

p=-0.3,q=-0.3,r=0.35,θ=30°,φ=30°,l=-1,m=-1,n=-1.5时,有

978-7-111-46865-3-Chapter06-107.jpg

立方体各角点经透视变换后由AB、…、H变为A∗、B∗、…、H∗,即有

978-7-111-46865-3-Chapter06-108.jpg

三点透视投影变换公式是978-7-111-46865-3-Chapter06-109.jpg,若投射中心在X轴的px处、Y轴的py处和Z轴的Pz处,则p=-1/pxq=-1/pyr=-1/pz。通常一点透视投影变换r≠0,p=q=0;两点透视投影变换pqr中有一个数为零,其余两个数为非零;在三点透视投影变换中pqr均为非零。

三点透视程序LP6-15.lsp可通过扫描二维码观看,其程序运行后得到的图形如图6-30所示。

978-7-111-46865-3-Chapter06-110.jpg

LP6-15.lsp程序

978-7-111-46865-3-Chapter06-111.jpg

图6-30 三点透视程序运行后得到的图形

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈