手机版

三维坐标变换

发布时间:2021-06-07   来源:未知    
字号:

三维平移变换、比例变换可看成是二维情况的直接推广。但旋转变换则不然,因为我们可选取空间任意方向作旋转轴,因此三维变换处理起来更为复杂。

第7章 三维变换

7.1 简介 7.2 三维几何变换 7.3 三维坐标变换

三维平移变换、比例变换可看成是二维情况的直接推广。但旋转变换则不然,因为我们可选取空间任意方向作旋转轴,因此三维变换处理起来更为复杂。

7.1 简介三维平移变换、比例变换可看成是二维情况的 直接推广。但旋转变换则不然,因为我们可选 取空间任意方向作旋转轴,因此三维变换处理 起来更为复杂。 与二维变换相似,我们也采用齐次坐标技术 来描述空间的各点坐标及其变换,这时,描 述空间三维变换的变换矩阵是4×4的形式。

由此,一系列变换可以用单个矩阵来表示。

三维平移变换、比例变换可看成是二维情况的直接推广。但旋转变换则不然,因为我们可选取空间任意方向作旋转轴,因此三维变换处理起来更为复杂。

7.2 三维几何变换7.2.1 基本三维几何变换1. 平移变换 若空间平移量为(tx, ty, tz),则平移变换为 z P’(x’,y’,z’) x x t x y y t y z z t P(x,y,z) z y 1 0 x y z 1 x y z 1 0 t x 0 1 0 ty 0 0 0 1 0 t z 1 0

x

补充说明:点的平移、 物体的平移、多面体 的平移、逆变换

三维平移变换、比例变换可看成是二维情况的直接推广。但旋转变换则不然,因为我们可选取空间任意方向作旋转轴,因此三维变换处理起来更为复杂。

2. 比例变换(1) 相对坐标原点的比例变换 一个点P=(x,y,z)相对于坐标原点的比例变换的矩 阵可表示为

sx 0 x y z 1 x y z 1 0 0

0 sy 0 0

0 0 sz 0

0 0 0 1 y

z

x

x xsx , y ysy , z zsz

其中 sx , sy , sz 为正值。

三维平移变换、比例变换可看成是二维情况的直接推广。但旋转变换则不然,因为我们可选取空间任意方向作旋转轴,因此三维变换处理起来更为复杂。

(2) 相对于所选定的固定点的比例变换 z z (x f,yf,zf)y x z (x f,yf,zf) (3) (x f,yf,zf) y sx 0 T x f , y f , z f S s x , s y , s z T x f , y f , z f 0 1 s x x f 0 sy 0 1 s y y f 0 0 sz 1 sz z f

(1)y

(x f,yf,zf)x z

(2)

y

x

x0 0 0 1

三维平移变换、比例变换可看成是二维情况的直接推广。但旋转变换则不然,因为我们可选取空间任意方向作旋转轴,因此三维变换处理起来更为复杂。

3. 绕坐标轴的旋转变换三维空间中的旋转变换比二维空间中的旋转变 换复杂。除了需要指定旋转角外,还需指定旋转 轴。 若以坐标系的三个坐标轴x,y,z分别作为旋转轴, 则点实际上只在垂直坐标轴的平面上作二维旋转。 此时用二维旋转公式就可以直接推出三维旋转变 换矩阵。

规定在右手坐标系中,物体旋转的正方向是右 手螺旋方向,即从该轴正半轴向原点看是逆时针 方向。

三维平移变换、比例变换可看成是二维情况的直接推广。但旋转变换则不然,因为我们可选取空间任意方向作旋转轴,因此三维变换处理起来更为复杂。

(1)绕 z 轴旋转

x x cos y sin y x sin y cos z zx y z x

y x

zz

(2)绕 x 轴旋转

y y cos z sin z y sin z cos x x xx

y

(3)绕 y 轴旋转

z z cos x sin x z sin x cos y y

z y

三维平移变换、比例变换可看成是二维情况的直接推广。但旋转变换则不然,因为我们可选取空间任意方向作旋转轴,因此三维变换处理起来更为复杂。

cos sin x y z 1 x y z 1 0 0

sin cos 0 0

0 0 1 0

0 0 0 1

绕 z 轴旋转

0 1 0 cos x y z 1 x y z 1 0 sin 0 0 cos 0 x y z 1 x y z 1 sin 0

0 0 sin 0 cos 0 0 1 0 0 0 1

绕 x 轴旋转

0 sin 1

0 0 cos 0 0

绕 y 轴旋转

三维平移变换、比例变换可看成是二维情况的直接推广。但旋转变换则不然,因为我们可选取空间任意方向作旋转轴,因此三维变换处理起来更为复杂。

旋转变换矩阵规律:x x

y

z

对于单位矩阵

y

z

1 0 0 0

0 1 0 0

0 0 1 0

0 0 ,绕哪个坐标轴 0 1

旋转,则该轴坐标的一列元素不变。按照二维图 形变换的情况,将其旋转矩阵 cos sin sin cos

中的元素添入相应的位置中,即

三维平移变换、比例变换可看成是二维情况的直接推广。但旋转变换则不然,因为我们可选取空间任意方向作旋转轴,因此三维变换处理起来更为复杂。

(1) 绕z轴正向旋转

角,旋转后点的z坐标值不变, x、y 角旋转。x xy y

坐标的变化相当于在xoy平面内作正

cos sin x y z 1 x y z 1 0 0

sin cos 0 0

0 0 1 0

0 0 0 1

z

z

1 0 0 0

0 1 0 0

0 0 1 0

0 0 0 1

(2)绕x轴正向旋转 角,旋转后点的x坐标值不变, Y、z坐标的变化相当于在yoz平面内作正 角旋转。

0 1 0 cos x y z 1 x y z 1 0 sin 0 0

0 0 sin 0 cos 0 0 1

三维平移变换、比例变换可看成是二维情况的直接推广。但旋转变换则不然,因为我们可选取空间任意方向作旋转轴,因此三维变换处理起来更为复杂。

(3) 绕y轴正向旋转 角,y坐标值不变,z、x的坐标相当 于在zox平面内作正 角旋转,于是

cos 0 z y x 1 z y x 1 sin 0

0 sin 1 0 0 cos 0 0 0 sin 1 0 0 cos 0 0

0 0 0 1 0 0 0 1

cos 0 x y z 1 x y z 1 sin 0

这就是说,绕y轴的旋转变换的矩阵与绕x轴和z轴 变换的矩阵从表面上看在符号上有所不同。

三维平移变换、比例变换可看成是二维情况的直接推广。但旋转变换则不然,因为我们可选取空间任意方向作旋转轴,因此三维变换处理起来更为复杂。

7.2.2 组合变换1. 物体绕平行于某一坐标轴的旋转变换。基本步骤: (1) 平移物体使旋转轴与所平行的坐标轴重合; (2) 沿着该坐标轴进行指定角度的旋转; (3) 平移物体使旋转轴移回到原位置。y y y z

x

(d)z x z (a) (b) x z x

R T Rx T 1

(c)

三维平移变换、比例变换可看成是二维情况的直接推广。但旋转变换则不然,因为我们可选取空间任意方向作旋转轴,因此三维变换处理起来更为复杂。

2. 绕任意轴旋转的变换

(1)平移物体使旋转轴通过坐标原点;y y P2 P1 x z z (1) P’1 P’2 x

(2)旋转物体使旋转轴与某个坐标轴(如z轴)重合; (3)关于该坐标轴进行指定角度的旋转;y P’1 (2)

y P’1 (3) x

P2’’ z

x

P2’’ z

三维平移变换、比例变换可看成是二维情况的直接推广。但旋转变换则不然,因为我们可选取空间任意方向作旋转轴,因此三维变换处理起来更为复杂。

(4) 应用逆旋转变换将旋转轴回到原方向; (5) 应用逆平移变换将旋转轴变换到原位置。y P’1 z (4) P’2 x z (5) y P2 P1 x

三维平移变换、比例变换可看成是二维情况的直接推广。但旋转变换则不然,因为我们可选取空间任意方向作旋转轴,因此三维变换处理起来更为复杂。

例. 求变换AV,使过原点的向量V=(a,b,c)与z轴的 正向一致。y V

y x x V’

实现步骤:

z

V’

z

(1)将V绕x轴旋转到xz 平面上;(2)再绕y轴旋转使之与z轴正向重合。 旋转角度的确定:绕x轴旋转的角度 等于向量V在yz 平 面上的投影向量与z 轴正向的夹角。 y V=(a,b,c) V1=(0,b,c)

x

z

三维平移变换、比例变换可看成是二维情况的直接推广。但旋转变换则不然,因为我们可选取空间任意方向作旋转轴,因此三维变换处理起来更为复杂。

根据矢量的点乘与叉乘,可以算出:sin b b2 c 2 , cos c b2 c 2

因此,0 1 c 0 b2 c 2 Rx b 0 b2 c 2 0 0 0 b b2 c 2 c b2

c 2 0 0 0 0 1

V VR x a,0, b 2 c 2

三维平移变换、比例变换可看成是二维情况的直接推广。但旋转变换则不然,因为我们可选取空间任意方向作旋转轴,因此三维变换处理起来更为复杂。

类似地,可以求出:sin a a b c2 2 2

, cos

b2 c 2 a 2 b2 c 2

b2 c 2 a 2 b2 c 2 0 R y a a 2 b2 c 2 0

0 1 0 0

a a 2 b2 c 2 0 b2 c 2 a 2 b2 c 2 0

0 0 0 1

AV Rx Ry

三维平移变换、比例变换可看成是二维情况的直接推广。但旋转变换则不然,因为我们可选取空间任意方向作旋转轴,因此三维变换处理起来更为复杂。

利用这一结果,则绕任意轴旋转的变换矩阵可表示为: y P2 P1 y P’1 z 1) T P’2

xz

x

y P’1 x P’1 3) Rz

P2’’ z 2) Rx Ry

P2’’ z

x

R T Rx Ry Rz Ry 1 Rx 1 T 1

三维平移变换、比例变换可看成是二维情况的直接推广。但旋转变换则不然,因为我们可选取空间任意方向作旋转轴,因此三维变换处理起来更为复杂。

7.2.3 绕任意轴旋转变换的简单算法给定具有单位长的旋转轴A=[ax,ay,az]和旋转角 ,则物体绕OA轴旋转变换的矩阵表示可确定如下:

a x a x A a y a x az ax

axa y a ya y aza y

axaz a y az az az a x a x a a A y x y a x a x

yaxa y axax axax axaz axax axax

A

0 az a A a z 0 ax a y a x 0 M A cos I A sin A*

o z 轴角旋转 x

P' P M T其中 M T 表示M的转置矩阵。

三维平移变换、比例变换可看成是二维情况的直接推广。但旋转变换则不然,因为我们可选取空间任意方向作旋转轴,因此三维变换处理起来更为复杂。

利用这一结果,则绕任意轴旋转的变换矩阵可表示为: y y P2 P1 x z z A P’2 P’1 x

R T M T T 1

其中旋转轴A=[ax,ay,az]为

P2 P1 P2 P1

传统的方法通过绕坐标轴旋转变换的乘积表示绕任意轴旋 转的变换。与之相比,这种方法更直观。

三维平移变换、比例变换可看成是二维情况的直接推广。但旋转变换则不然,因为我们可选取空间任意方向作旋转轴,因此三维变换处理起来更为复杂。

7.2.4 三维变换矩阵的功能分块 a11 a 12 a13 tx a21 a22 a23 ty a31 a32 a33 tz px py pz s

(1)三维线性变换部分 (2)三维平移变换部分

(3)透视变换部分(4)整体比例因子

三维坐标变换.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
    ×
    二维码
    × 游客快捷下载通道(下载后可以自由复制和排版)
    VIP包月下载
    特价:29 元/月 原价:99元
    低至 0.3 元/份 每月下载150
    全站内容免费自由复制
    VIP包月下载
    特价:29 元/月 原价:99元
    低至 0.3 元/份 每月下载150
    全站内容免费自由复制
    注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
    × 常见问题(客服时间:周一到周五 9:30-18:00)