图形学变换——平移、旋转和缩放

一、概述

在齐次坐标中,所有的仿射变换都可以使用如下形式的 4 x 4 矩阵来表示
在这里插入图片描述
p ( x , y , z ) p (x, y, z) p(x,y,z) 表示方式为
在这里插入图片描述
向量 a ⃗ ( x , y , z ) \vec a (x, y, z) a (x,y,z) 表示方式为
在这里插入图片描述
关于齐次坐标的理解参考博文:齐次坐标

二、平移

平移(translation)变换把点沿着给定方向移动固定距离, p ′ = p + d p' = p + d p=p+d 如下图所示。
在这里插入图片描述
比如:将点 p ( 1 , 1 , 1 ) p (1, 1, 1) p(1,1,1),往 X X X 轴正方向移动 1单位,往 Y Y Y 轴正方向移动 2 单位, 往 Z Z Z 轴正方向移动 3 单位,最终坐标是 p ′ ( 2 , 3 , 4 ) p'(2, 3, 4) p(2,3,4)
数学上的运算为 p ( 1 , 1 , 1 ) + d ( 1 , 2 , 3 ) = p ′ ( 2 , 3 , 4 ) p (1, 1, 1) + d (1, 2, 3) = p'(2, 3, 4) p(1,1,1)+d(1,2,3)=p(2,3,4)
在图形学中, p + d p + d p+d 可以表示为 p p p 乘于 d d d 对应的平移矩阵 T T T
在这里插入图片描述
所以 p ′ p' p 的平移运算可表示为
在这里插入图片描述

在这里插入图片描述

二、旋转

旋转(rotation)变换指点绕着特定的一个点旋转固定角度。下面我们使用 2D 坐标讲解点 p ( x , y ) p(x, y) p(x,y),绕特定的点 O ( 0 , 0 ) O(0, 0) O(0,0) 原点旋转 θ θ θ 度,变换后的坐标表示为 p ′ ( x ′ , y ′ ) p'(x', y') p(x,y)
在这里插入图片描述

p p p p ′ p' p 转换为极坐标表示则有
在这里插入图片描述
利用两角和的正弦和余弦公式可得
在这里插入图片描述
转换为矩阵像形式
在这里插入图片描述
在 3D 中绕 Z Z Z 轴旋转的所有点 z z z 值不变,等价于上面 2D 绕原点的旋转,所以 3D 坐标的旋转可以表示为
在这里插入图片描述
在图形学中 绕 Z Z Z 轴旋转的变换矩阵为
在这里插入图片描述
最终 p ′ p' p 的旋转可表示为
在这里插入图片描述
同理可得绕 X X X 轴旋转的变换矩阵为 R x R_{x} Rx,绕 Y Y Y 轴旋转的变换矩阵为 R y R_{y} Ry。注:这里使用右手坐标系
在这里插入图片描述

三、缩放

缩放(scaling)变换指沿着指定不动点(变换后该点位置保持不变,这里使用原点),对象沿着指定方向(坐标轴)伸长或缩短。缩放后的点 p ′ ( x ′ , y ′ , z ′ ) p'(x', y', z') p(x,y,z) 的坐标可表示为
在这里插入图片描述
使用齐次坐标表示为
在这里插入图片描述
在这里插入图片描述
欢迎关注个人公众号,实时推送最新博文!
在这里插入图片描述

  • 10
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值