Cross - 向量叉积


向量

向量表示三维空间中一个有长度的方向,单位长度为

Cross1.png

也写作:

其中三个轴上的单位向量,平面中的向量可以视为轴长度为的三维空间中一种特殊的向量,一般写作:

点积

向量的点积计算方式如下:

两个向量的点积结果是一个数字。

叉积

向量的叉积计算方式如下:

叉积的结果是一个向量,此向量遵循右手法则,将右手四指卷起大拇指伸出。从沿着四根卷起的手指指向,叉积结果向量与大拇指方向相同,与所在平面垂直。

也可以写作:

其中即为右手法则中大拇指的方向向量,长度为为从转向的转角()。

行列式计算公式

二阶行列式:

三阶行列式:

根据上式可知,三维空间中向量叉积为:

二维平面中向量叉积为:

向量夹角

计算两个向量的夹角时,我们一般将它们看作其共同的垂直方向向量长度为,叉积的结果。

的逆时针方向(按右手螺旋法则从旋转到时,大拇指与单位向量方向相同);

Cross2.png

的顺时针方向(按右手螺旋法则从旋转到时,大拇指与单位向量方向相反);

Cross3.png

共线,这属于边界情况;

需要注意叉积的正负值与向量间顺时针逆时针的关系,很容易搞混。

计算向量叉积的时间复杂度为


数学复习全书(李永乐李正元考研数学 数学一)


源码

Cross.h

Cross.cpp

测试

CrossTest.cpp