关于向量点积和叉积的回顾和总结

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于向量点积和叉积的回顾和总结相关的知识,希望对你有一定的参考价值。

一.点积

1.数量积,返回数值。

2.公式:a*b=|a|*|b|*cosθ,适用于二维和三维。向量基本以坐标的形式给出,计算的的话就是对应位置的相乘,然后相加,可以扩展到n维。

3.根据公式,我们可以判断这两个两个向量成锐角(<0),直角(=0),钝角(>0)。

4. 公式:技术分享

 1 double Dot(point A,point B)//点乘
 2 {
 3     return A.x*B.x+A.y*B.y;
 4 }
 5 
 6 double Length(point A)//
 7 {
 8     return sqrt(Dot(A,A));
 9 }
10 
11 double Angle(point A,point B)//角度 
12 {
13     return acos(Dot(A,B)/Length(A)/Length(B));
14 }

 

二.叉积

1.向量积,返回向量。

2.axb=|a|*|b|*sinθ,二维空间里的叉乘:V1(x1,y1) X V2(x2,y2) = x1y2 – y1x2

3.叉积的长度 |a×b| 可以解释成以ab为邻边的平行四边形的面积。

4.混合积 [a b c] = (a×b)·c可以得到以a,b,c为棱的平行六面体的体积。

4.可以判断一个点(P)在一条直线(两个点A,B构成)的哪一侧。PAxPB<0,左侧。

技术分享

 1 double Cross(point A,point B)//叉乘
 2 {
 3     return A.x*B.y-A.y*B.x;
 4 }
 5 
 6 double Area(Point A,Point B,Point C)//平行四边形面积
 7 {
 8     point ab,ac;
 9     ab.x=B.x-A.x;ab.y=B.y-A.y;
10     ac.x=C.x-A.x;ac.y=C.y-A.y;
11     return Cross(ab,ac);
12 }

 

以上是关于关于向量点积和叉积的回顾和总结的主要内容,如果未能解决你的问题,请参考以下文章

向量的点积和叉积

向量的点积和叉积

二维图形变换

✠OpenGL-3-数学基础

Python Numpy中的几个矩阵乘法

向量乘积的几何意义