1:点乘: 定义:a·b=|a|·|b|cos<a,b> 【注:粗体小写字母表示向量,<a,b>表示向量a,b的夹角,取值范围为[0,180]】
注:看到公式,我们即可知道点乘过后得到的是一个标量,而不是一个向量。 而且可以通过这个去计算两个点之间的夹角及方向;
图片详解:
Unity项目中的应用
1:通过点乘,我们可以计算出两个点之前的前后所属位置,当a·b>0;角度值在0到90度之间,可想而知及b点在a点的前方,反之a·b<0;角度值在90到180度之间,可想而知b点在a点的后方
2:可以根据点乘计算两个向量之间的夹角;<a,b>= arccos(a·b / (|a|·|b|))
话不多说看代码:
/// <summary>
/// 点乘
/// </summary>
/// <param name="a"></param>
/// <param name="b"></param>
private void TestDot(Transform a,