三维投影变换
透视投影图-4
解得
A*x0+B*y0+C*z0+D t=
A*(x-x0)+B*(y-y0)+C*(z-z0)
代t人(1)、(2)、(3)就得到变换 结果。
我们可以将上述方程写成矩阵的形式, 但由于比较复杂,由同学们课下做为 练习试一下。
透视投影图-5
几个简单的透视投影变换
1。投影中心为(-1/p,0,0),投影平面为x=0。
视向边换-7
3、绕y轴旋转-角
y zw
z
x
O
yw
xw
视向边换-8
cosф 0 -sinф 0
T3=
0 100 sinф 0 cosф 0
0 0 01
x3= x2•cosф+z2•sinф y3= y2 z3= x2•sinф-z2 •cosф
sinф=x 0/(x 02+y02)½ cosф=y0/(x 02+y02)½
z zw
E
y
x
O
yw
xw
视向边换-4
1 0 00
T1=
0 1 00 0 0 10
-x0 –y0 -z0 1
x1=x-x0 y1=y-y0 z1=z-z0
视向边换-5
2、绕x轴旋转90°
y zw
z
E
x
O
yw
xw
视向边换-6
1 0 00
T2=
0 0 -1 0 0 1 00
0 0 01
x2=x1 y2=y1•cos90° -z1•sin90° z2= y1•s0°) sin(-90°) 0 1 0 0
0
0 01 0
0 0 0 1 0 -sin (-90°) cos(-90°) 0 0 -d3 1
0
1 0 0 00
0
=
0 0 -1 0 00 00
01
0 0 -d3 1
[x* y* z* 1]= [x y z 1]•TH=[x 0 -y-d3 1]
yp = y p*x
zp = z
100p 0100
T=
0010 0000
p*x
透视投影图-8
对于透视投影来讲,一束平行于投影平面 的平行线的投影可保持平行,不平行与投影 平面的平行线的投影会汇聚到一个点,这个 点称为灭点。灭点可以看作是无穷远处的一 点做投影平面上 的投影。
透视投影的灭点有无限多个,不同方向, 不同方向的平行线在投影平面上就能形成不 同的灭点。坐标轴方向上的平行线在投影平 面上形成的灭点又称为主灭点。由于三维空 间共有三个坐标轴,因此最多有三个灭点。
3. 水平投影视图 水平投影图的形成过程是:先将水体向侧
立投影面作投影(z坐标取0);然后将 投影面绕x轴旋转-90°,使其与正立投 影面处于同一平面;最后使图形沿z轴负 向平移一个距离d3,使正投影图和侧投 影图之间保持一个距离。
三视图-6
1000 1 0
0 0 1 00 0
TH=
0100 0000
透视投影图-1
1。投影及投影变换的定义 投影是将n维空间点变换成小于n维点。 将三维空间中的点变换到二维平面上的 过程称为投影变换。
透视投影图-2
2。透视投影和平行投影 投影变换按照投影中心与投影平面的距离
是否有限而分为透视投影和平行投影。当投 影中心到投影平面的距离是有限的,投影变 换称为透视投影,否则成为平行投影。 3。透视投影 设投影中心的坐标为(x0,y0,z0),投影平面的 方程为A*x+B*y+C*z+D=0,对于空间中任意一 点(x,y,z)设其在投影平面上的投影为(xp,yp,zp)。
视向边换-2
建立一个观察坐标系取决于两个因素, 一个是观察点的位置,另外一个是观察 方向。为了方便研究,通常将观察点到 世界坐标系的原点的方向规定为观察方 向。
2、视向变换 把世界坐标系中的点P(x,y,z)变换为观察 坐标系中的点Q(x*,y*,z*)的过程称为 “视向变换”
视向边换-3
1.平移坐标系(设观察点为(x0,y0,z0))
则
t=
1 p*x+1
xp = 0
yp = y p*x+1
zp = z p*x+1
透视投影图-6
投影变换的矩阵为
00 0 p 01 0 0
T=
00 1 0 00 0 1
类似地,我们可以对y轴和z轴做 相应的变换。
透视投影图-7
2。投影中心在(0,0,0) 投影平面为x=1/p;
则
1 t=
p*x
xp = 1/p
三维投影变换
三视图-3
2.侧投影视图 立体侧投影图的形成过程是:先将立体 向侧立投影面作投影(x坐标取0);然 后将投影面绕z轴旋转90°,使其与正立 投影面处于同一平面;最后使图形沿x 轴负向平移一个距离d1,使正投影图和 侧投影图之间保持一个距离。
三视图-4
0 0 0 0 cos90° sin90° 0
透视投影图-9
可以简单的推断: 1、与一个坐标轴垂直的平面作为投影平面的 话,该平面上的投影一定是一点投影。 2、与两个坐标轴相交且与第三个坐标轴不相 交的平面作为投影平面的话,该平面上的投 影一定是两点投影。 3、与三个坐标轴都相交且不含有任何坐标轴 的平面作为投影平面的话,该平面上的投影 一定是三点投影。
透视投影图-3
根据(x0,y0,z0) 、(x,y,z) 、 (xp,yp,zp)三点 共线即满足:
xp=x0+t*(x-x0)
(1)
yp=y0+t*(y-y0)
(2) t>0
zp=z0+t*(z-z0)
(3)
A*xp+B*yp+C*zp+D=0 (4)
其中:A*(x-x0)+B*(y-y0)+C*(z-z0)0
视向边换-9
4、绕x轴逆时针旋转角
y zw
x zE
O
yw
xw
视向边换-10
10 0 0
T4=
0 cos -sin 0 0 sin cos 0
00 0 1
视向边换-1
1、世界坐标系和观察坐标系 前面我们处理图形问题时通常使用的是笛
卡尔坐标系,这种坐标系一般成为“世界坐 标系”或“用户坐标系”。
以观察点(即视点)为原点,以观察点到 物体的方向为z轴,以水平向右且与z轴垂直的 方向为x轴,与x轴和z轴垂直向上的方向做为y 轴,这样所成的坐标系称为观察坐标系。
TW=
0100 0010
0 -sin90° cos90° 0
0001 0
0 0 10
0 000 0 0 0 1
=
-1 0 0 0 0 010
-d1 0 0 1
1 000 0 100 0 010 -d1 0 0 1
[x* y* z* 1]= [x y z 1]•TW=[-y-d1 0 z 1]
三视图-5