Projection 和 Rejection

2022-09-14  本文已影响0人  暴走TA

为了便于书写,我们约定
\vec{a}=\vec{OA}
\vec{b}=\vec{OB}
\vec{c}=\vec{OC}

Projection

求一个向量在另一个向量上的投影,简单理解如下图:

向量A在向量B上的投影,也就是向量C
其公式为:
\vec{c}=\vec{b}*\frac{dot(\vec{a},\vec{b})}{dot(\vec{b},\vec{b})}
这个公式看上去比较不好理解,分解一下有助于理解
dot(\vec{a},\vec{b})=\parallel\vec{a}\parallel\parallel\vec{b}\parallel\cos\theta
dot(\vec{b},\vec{b})=\parallel\vec{b}\parallel\parallel\vec{b}\parallel\cos\alpha
以为 \vec{b}和\vec{b} 的夹角为0 (自己和自己的夹角肯定为0)所以 \cos\alpha=\cos(0)=1
所以dot(\vec{b},\vec{b})=\parallel\vec{b}\parallel\parallel\vec{b}\parallel
带入
\vec{c}=\vec{b}*\frac{\parallel\vec{a}\parallel\parallel\vec{b}\parallel\cos\theta}{\parallel\vec{b}\parallel\parallel\vec{b}\parallel}
约一下
\vec{c}=\vec{b}*\frac{\parallel\vec{a}\parallel\cos\theta}{\parallel\vec{b}\parallel}

为了好理解可以换一下位置
\vec{c}=\frac{\vec{b}}{\parallel\vec{b}\parallel}*\parallel\vec{a}\parallel\cos\theta 其中 \frac{\vec{b}}{\parallel\vec{b}\parallel}\vec{b}方向上的单位向量(长度为一)

\parallel\vec{a}\parallel\cos\theta\vec{a}\vec{b} 方向上的长度
所以 长度乘以方向,得到了新的 \vec{c}\vec{a}\vec{b} 方向上的投影

Rejection

求得是 两个向量\vec{a} 和 \vec{b} 投影处的垂直向量\vec{CA}

A向量在B向量上的投影垂直向量

其公式为:
\vec{CA}=\vec{a}-\vec{b}*\frac{dot(\vec{a},\vec{b})}{dot(\vec{b},\vec{b})}
也就是
\vec{CA}=\vec{a}-\vec{c}
这个对于使用计算一个面的顶点向面中心的向量很有用处的

上一篇下一篇

猜你喜欢

热点阅读