图形学-向量点乘

向量的操作

向量点乘(Dot Product)

两个向量点乘,是这两个向量每个分量相乘结果的和。

对于3D向量,可以表示为:
a ⋅ b = a x b x + a y b y + a z b z a\cdot b = a_xb_x + a_yb_y + a_zb_z ab=axbx+ayby+azbz

向量点乘的几何意义

用于计算两向量夹角的余弦值
a ⋅ b = ∥ a ∥ ∥ b ∥ cos ⁡ θ a\cdot b = \rVert a \rVert \rVert b\rVert \cos\theta ab=a∥∥bcosθ

cos ⁡ θ = a ⋅ b ∥ a ∥ ∥ b ∥ = a ∥ a ∥ ⋅ b ∥ b ∥ \cos\theta= \frac{a\cdot b }{\rVert a \rVert \rVert b\rVert} = \frac{a}{\rVert a \rVert } \cdot\frac{b}{\rVert b \rVert } cosθ=a∥∥bab=aabb
如果向量a、b都是单位向量,则可以简化为:
cos ⁡ θ = a ⋅ b \cos\theta= a \cdot b cosθ=ab

应用1:光照计算。计算反射光和法线的夹角余弦值,余弦值越大夹角越小光照强度越大,余弦值越小夹角越大光照强度越大。

应用2:背面裁剪。反射光和平面法线的余弦值大于0,则在平面正向,小于0则在平面反向。

总结

cos ⁡ θ = 0 ,那么u与v垂直 \cos\theta =0 \text {,那么u与v垂直} cosθ=0,那么uv垂直
cos ⁡ θ > 0 ,那么向量u、v之间的夹角在0到90°之间,方向基本相同 \cos\theta >0 \text {,那么向量u、v之间的夹角在0到90°之间,方向基本相同} cosθ>0,那么向量uv之间的夹角在090°之间,方向基本相同
cos ⁡ θ < 0 ,那么向量u、v之间的夹角在90°到180°之间,方向基本相反 \cos\theta <0 \text {,那么向量u、v之间的夹角在90°到180°之间,方向基本相反} cosθ<0,那么向量uv之间的夹角在90°180°之间,方向基本相反

点乘第二个集合意义

用于计算向量u在向量v上的投影
a在b上的投影 = ∥ a ∥ ∗ cos ⁡ θ = a ⋅ b ∥ b ∥ = Dot(u,normalized(v)) \text {a在b上的投影} = \rVert a \rVert*\cos\theta = \frac{a\cdot b}{ \rVert b \rVert}=\text{Dot(u,normalized(v))} ab上的投影=acosθ=bab=Dot(u,normalized(v))
a ⋅ b 代表a在b上的投影与 ∥ b ∥ 的乘积 a\cdot b\text{代表a在b上的投影与}\rVert b \rVert \text{的乘积} ab代表ab上的投影与b的乘积

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值