1)向量的归一与点乘。
点乘在实际运算中,计算公式是 :u 点乘 v = u.x * v.x + u.y * v.y
点乘在几何上有对应的公式: u 点乘 v = u的模 * v的模 * uv夹角的cos值
它的几何意义是:u的长度与v在u上的投影长度的乘积,它是一个标量,而且可正可负。
如果将向量归一化,那么长度被重新计算了,变化1,但方向仍是有效的。
归一化之后,配合点乘可以得到两个效果:
<1> 得到一条线在另一条线上的投影值。
当一个向量b与另一个向量a的夹角在(0, PI/2)&(3*PI/2, 2*PI)
之间,它在a方向上的投影向量c就是c = ( b . a1 ) * a1,其中a1是a的单位向量;它在a
相反方向的投影向量c'是c'= ( b'. a1 ) * a1,其中向量b'是b的同模相反向量。
<2> cos夹角 = (u 点乘 v) / u的模 * v的模 = (u 点乘 v) / 1 = u 点乘 v = u.x * v.x + u.y * v.y
2)利用点乘,判断物体是否在角色的前面。
如果对象在智能体朝向平面的前面,则智能体方向矢量和从智能体到对象的矢量的点乘为正 ; 如果对象在智能体朝向平面的后面,则点乘为负。
3)利用点乘的原理,可知与向量垂直的向量。
任给一个非零向量(x,y),则它相对坐标轴逆时针转90度的正交向量为(-y,x),顺时针转90度的正交向量为(y,-x)。
比如向量(2,3)r逆时针旋转90度的正交向量是(-3,2),顺时针旋转90度的正交向量是(3,-2)。