四元数和向量相乘,向量间的点乘和叉乘

原创 2015年07月07日 09:29:01

四元数和向量相乘

       Quaternion.Euler(x,y,z) 返回一个绕x轴旋转x度再绕y轴旋转y度再绕z轴旋转z度的Quaternion,因此Quaternion.Euler(0,90,0)返回一个绕y轴旋转90度的旋转操作.

Quaternion作用于Vector3的右乘操作(*)返回一个将向量做旋转操作后的向量.

因此Quaternion.Euler(0,90,0)*Vector3(0.0,0.0,-10)表示将向量Vector3(0.0,0.0,-10)做绕y轴90度旋转后的结果.因该等于Vector3(-10,0,0).

点乘

        两个向量点乘得到一个标量 ,数值等于两个向量长度相乘后再乘以二者夹角的余弦值 。如果两个向量a,b均 为单位 向量 ,那么a.b等于向量b在向量a方向上的投影的长度

点乘后得到的是一个值:

若结果 == o,则 两向量 互垂直 。
若结果 < 0  ,则 两向量夹角大于90°。
若结果 >0  ,则两向量夹角小于 90°。

叉乘

      两个向量的叉乘得到一个新的向量 ,新向量垂直于原来的两个向量再乘夹角的正弦值 叉乘后得到的还是一个向量

结论

       在unity3D里面。两个向量的点乘所得到的是两个向量的余弦值,也就是-1 到1之间,0表示垂直,-1表示相反,1表示相同方向。两个向量的叉乘所得到的是两个向量所组成的面的垂直向量,分两个方向。 简单的说,点乘判断角度,叉乘判断方向。 形象的说当一个敌人在你身后的时候,叉乘可以判断你是往左转还是往右转更好的转向敌人,点乘得到你当前的面朝向的方向和你到敌人的方向的所成的角度大小


Unity 四元数和向量相乘

position = rotation*Vector3(0.0, 0.0, -distance) + target.position;   这是相机环绕的一段代,当时无法理解这是怎么实现环绕的,上...
  • ccaadd110
  • ccaadd110
  • 2016年12月08日 16:51
  • 1810

彻底搞懂四元数

提要旋转的表达方式有很多种,有欧拉角,旋转矩阵,轴角,四元素等等,今天要学习的就是游戏开发中最常用的四元素。从欧拉角和轴向角到四元数在讲四元素之前,我们先来看下简单的欧拉角和轴向角。欧拉角使用最简单的...
  • qp120291570
  • qp120291570
  • 2014年09月03日 16:55
  • 33644

四元数与三维坐标相乘

Quaternion.Euler(x,y,z)返回一个绕x轴旋转x度再绕y轴旋转y度再绕z轴旋转z度的Quaternion,因此Quaternion.Euler(0,90,0)返回一个绕y轴旋转90度...
  • sakyaer
  • sakyaer
  • 2015年03月17日 16:34
  • 1175

四元数

想象一个物体在3D空间中移动的过程,该物体必然会涉及到旋转。例如一个怪物,他的运动方向会改变,要改变其方向只需要对其进行旋转即可。        旋转的方式大致分为三种:Euler旋转,矩阵旋转,以...
  • chenglechao
  • chenglechao
  • 2013年11月24日 16:59
  • 1269

关于四元数

四元数与复数: 在搞清楚四元数之前首先要知道什么是复数以及复数的运算,详情:http://www.cnblogs.com/ThreeThousandBigWorld/archive/2012/07/...
  • u011106520
  • u011106520
  • 2014年02月21日 16:55
  • 1203

四元数的运算

转自:http://blog.sina.com.cn/s/blog_4b700c4c0102e30g.html 四元数是由爱尔兰数学家威廉·卢云·哈密顿在1843年发现的数学概念。四元数的乘法不符合...
  • chenlanjie842179335
  • chenlanjie842179335
  • 2012年10月04日 09:02
  • 14781

四元数讲解

转载:http://www.qiujiawei.com/understanding-quaternions/Understanding Quaternions 中文翻译《理解四元数》Tags: mat...
  • long2324066440
  • long2324066440
  • 2016年11月15日 20:47
  • 1966

向量,四元数理解。

当年不好好上学,基本的数学知识都不会,现在只有恶补一下了。 最基本的向量。   比较通俗的说法: 定义一个坐标为(1,1),从原点到此坐标画一条线,打上箭头,就表示为向量v(1,1) 教科书上的定义:...
  • u010217338
  • u010217338
  • 2017年04月12日 14:28
  • 319

Ogre中四元数与三维向量(Unity3D异曲同工)

3D中四元数与三维向量的一些关系以及作用,不涉及深层次操作,Ogre爱好者以及对Unity3D等引擎有类似疑惑的可以一看...
  • loiecarsers
  • loiecarsers
  • 2015年09月18日 16:32
  • 1086

【Unity技巧】四元数(Quaternion)和旋转

旋转,应该是三种坐标变换——缩放、旋转和平移,中最复杂的一种了。大家应该都听过,有一种旋转的表示方法叫四元数。按照我们的习惯,我们更加熟悉的是另外两种旋转的表示方法——矩阵旋转和欧拉旋转。矩阵旋转使用...
  • candycat1992
  • candycat1992
  • 2014年11月23日 11:30
  • 196363
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:四元数和向量相乘,向量间的点乘和叉乘
举报原因:
原因补充:

(最多只允许输入30个字)