齐次坐标 平移矩阵

为什么引入齐次坐标可以表示平移?

答:

首先我们用一个矢量来表示空间中一个点:r = [ r_{x}, r_{y}, r_{z}]
如果我们要将其平移,平移的矢量为:t=[ t_{x}, t_{y}, t_{z}]
那么正常的做法就是:r + t =[ r_{x}+t_{x}, r_{y}+t_{y}, r_{z}+t_{z}]

如果不引入齐次坐标,单纯采用3X3矩阵乘法来实现平移
你想做的就是找到一个矩阵m,使得
r\cdot m = r + t =[ r_{x}+t_{x}, r_{y}+t_{y}, r_{z}+t_{z}]
然后你就会发现你永远也找不到这样的矩阵

所以我们需要新引入一个维度,原来r = [ r_{x}, r_{y}, r_{z},1]
那么我们可以找到一个4X4的矩阵来实现平移
\left[ 1,0,0,0 \right]
\left[ 0,1,0,0 \right]
\left[ 0,0,1,0 \right]
\left[ t_{x} ,t_{y},t_{z},1 \right]
现在,就有:
r\cdot m = r + t =[ r_{x}+t_{x}, r_{y}+t_{y}, r_{z}+t_{z}, 1]

  1. 为什么要引入齐次坐标来表示平移?

在计算机图形学中,坐标转换通常不是单一的,一个几何体在每一帧可能都设计了多个平移,旋转,缩放等变化,这些变化我们通常使用串接各个子变化矩阵的方式得到一个最终变化矩阵,从而减少计算量。所以我们需要将平移也表示为变化矩阵的形式。因此,只能引入齐次坐标系。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

File Transfer

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值