向量的理解

作者: 黑眼豆豆_ | 来源:发表于2020-07-18 21:19 被阅读0次

向量

向量指具有大小(magnitude)和方向的量。它可以形象化地表示为带箭头的线段。在3D笛卡尔坐标系中,可以用XYZ三个值确定一个点,而这个点可以称之为向量

向量.jpg
  • 向量与标量
    向量:指具有大小(magnitude)和方向的量,例如上图中的P点,由原点指向P点时不仅展示了距离,也展示了方向。
    标量:只展示大小,比如1,5,10等等。
  • 单位向量,向量的长度为1称之为单位向量。
  • 向量长度也称之为向量的。计算方法如下:
向量的计算公式.jpg

如果一个向量不是单位向量,而把它缩放到1,这个过程叫做标准化,公式如下:


1595076032755.jpg

向量点乘

向量点乘比较简单,是相应元素的乘积的和。

向量点乘.jpg
注意结果不是一个向量,而是一个标量(Scalar),它是可以表示向量之间的夹角(θ)。
向量点乘公式如下:
//假设两个向量,U,V
u=(u1,u2,u3) v=(v1,v2,v3)
//点乘公式如下
u * v = u1v1+u2v2+u3v33=lul*lvl*COS(U,V)
  • 前提条件:2个向量必须为单位长度。
  • 具体操作:2个向量进行点乘。
  • 结果:返回一个[-1,1]范围的只,这个值时候夹角的余弦值,cos。

math3d库中提供了关于点乘的API。

//1.m3dDotProduct3函数获得2个向量之间的点乘结果;
float m3dDotProduct3(const M3DVector3f u,const M3DVector3f v);
//2.m3dGetAngleBetweenVector3可获得2个向量之间夹角的弧度值;
float m3dGetAngleBetweenVector3(const M3DVector3f u,const
M3DVector3f v);

向量叉乘

2个向量的叉乘可以得到另外一个向量,新的向量会与原来的2个向量定义的平面垂直。


向量叉乘.png

如图所示,向量a和向量b进行叉乘,得到一个垂直向上的向量,此为叉乘所得到的结果。
叉乘公式如下

//向量叉乘公式
A x B = |A||B|Sin(θ)

有点类似于点乘,但是与点乘不同是θ是有角度的,对于点乘的结果,我们遵循右手法则:
1.右手手掌张开,四指并拢,大拇指垂直于四指指向的方向;
2.伸出右手,四指弯曲,四指与A旋转到B方向一致,那么大拇指指向为C向量的方向。
如图所示

右手法则.png
所以,叉乘并不满足交换律,即向量a和向量b交换后,得到的结果不相同。

math3d库中提供了关于叉乘的API。

//1.m3dCrossProduct3函数获得2个向量之间的叉乘结果,得到一个新的向量。
void m3dCrossProduct3(M3DVector3f result,const M3DVector3f  u ,const M3DVector3f v);

相关文章

  • 向量的理解

    向量 向量指具有大小(magnitude)和方向的量。它可以形象化地表示为带箭头的线段。在3D笛卡尔坐标系中,可以...

  • 理解向量

    在空间直角坐标系中,分别取与x轴、y轴,z轴方向相同的3个单位向量i,j,k作为一组基底。若a为该坐标系内...

  • 术语向量的理解

    参考:https://yq.aliyun.com/articles/326311

  • 学习小组Day5笔记--徐沫沫

    理解数据类型:向量和数据框 part1: 向量 1. 向量 区分标量和向量“元素” 指的是数字或者字符串(用chr...

  • 视频特效学习04-OpenGL基础变化

    学习目标: 向量、矩阵和基础变化(了解) 使用矩阵/向量移动几何图形(实践) 矩阵堆栈(理解) 1. 向量与矩阵 ...

  • 学习小组Day5笔记--丁览博

    思维导图来自于mindnode 数据结构 向量 向量和标量的区别 -向量:多个元素组成的变量,抑或理解为多个标量 ...

  • 学习小组Day5笔记--Jeremy

    今日学习重点 熟悉向量、数据框的使用 理解元素、标量、向量 变量赋值方法 从向量中提取元素 数据框的读取、设置行列...

  • 范数-Norm- the concept

    向量的范数定义: 1.向量的范数可以简单形象的理解为向量的长度,或者向量到零点的距离,或者相应的两个点之间的距离。...

  • SVM(支持向量机)的原理

    原博文:支持向量机(SVM)入门理解与推导 一、简介 支持向量机(support vector machines)...

  • 线性代数的本质——笔记1

    1.向量是什么? 有三种理解向量的方式,如下: 向量是空间中的一条箭头,它有长度与方向两个属性。 向量是有着一串数...

网友评论

    本文标题:向量的理解

    本文链接:https://www.haomeiwen.com/subject/cufnhktx.html