Quaternions are used to represent rotations.

四元数用于表示旋转。

They are compact, don't suffer from gimbal lock and can easily be interpolated. Unity internally uses Quaternions to represent all rotations.

它们是紧凑的,不会出现万向节锁并且能够很容易被插值。Unity内使用Quaternion表示所有旋转。

However, they are based on complex numbers and are not easy to understand intuitively. Thus you almost never access or modify individual Quaternion components (x,y,z,w); most often you would just take existing rotations (e.g. from the Transform) and use them to construct new rotations (e.g. to smoothly interpolate between two rotations). The Quaternion functions that you use 99% of the time (The other functions are only for exoctic uses) Quaternion.LookRotationQuaternion.Angle,Quaternion.EulerQuaternion.SlerpQuaternion.FromToRotationQuaternion.identity

然而,它们基于复数的并不容易被直观地理解,因此你没有必要访问或修改单个Quaternion组件(x,y,z,w);通常你只需把现有的旋转(例如,来自Transform)并使用它们来构造新的旋转(例如,在两个旋转间平滑地插值)。四元数函数你99%的时间你会使用它(其他函数仅额外使用)Quaternion.LookRotationQuaternion.AngleQuaternion.EulerQuaternion.Slerp,Quaternion.FromToRotationQuaternion.identity

You can use Quaternion.operator * to rotate one rotation by another, or to rotate a vector by a rotation.

你可以使用Quaternion.operator *由另一个四元数来旋转一个旋转角度,或由一个旋转角度来旋转一个向量。

Variables变量

  • X component of the Quaternion. Don't modify this directly unless you know quaternions inside out.
    四元数的X组件。不要直接修改这个,除非你很了解四元数。
  • Y component of the Quaternion. Don't modify this directly unless you know quaternions inside out.
    四元数的Y组件。不要直接修改这个,除非你很了解四元数。
  • Z component of the Quaternion. Don't modify this directly unless you know quaternions inside out.
    四元数的Z组件。不要直接修改这个,除非你很了解四元数。
  • W component of the Quaternion. Don't modify this directly unless you know quaternions inside out.
    四元数的W组件。不要直接修改这个,除非你很了解四元数。
  • Access the x, y, z, w components using [0], [1], [2], [3] respectively.
    分别使用 [0]、[1]、 [2]、 [3],访问x、y、z、w组件。
  • Returns the euler angle representation of the rotation.
    返回表示旋转的欧拉角度。

Constructors构造器

  • Constructs new Quaternion with given x,y,z,w components.
    用给定的x、y、z、w组件,构造新的四元数。

Functions函数

  • Converts a rotation to angle-axis representation.
    转换一个旋转用“角-轴”表示。
  • Creates a rotation which rotates from fromDirection to toDirection.
    创建一个从fromDirection到toDirection的旋转。
  • Creates a rotation that looks along forward with the the head upwards along upwards
    创建一个旋转,沿着forward(z轴)并且头部沿着up(y轴)的约束注视。
  • Returns a nicely formatted string of the Quaternion
    返回一个格式化好的四元数字符串。

Class Variables类变量

  • The identity rotation (Read Only). This quaternion corresponds to "no rotation": the object
    同一性旋转(只读)。该四元数,相当于"无旋转":这个物体完全对齐于世界或父轴。

Class Functions类函数

    • Combines rotations lhs and rhs.
      组合旋转lhs和rhs。
    • Are two quaternions equal to each other?
      两个四元数相等?
    • Are two quaternions different from each other?
      两个四元数是不相等的?
    • The dot product between two rotations.
      两个旋转之间的点乘。
    • Creates a rotation which rotates angle degrees around axis.
      绕axis轴旋转angle,创建一个旋转。
    • Creates a rotation which rotates from fromDirection to toDirection.
      从fromDirection到toDirection创建一个旋转。
    • Creates a rotation that looks along forward with the the head upwards along upwards
      创建一个旋转,沿着forward(z轴)并且头部沿着upwards(y轴)的约束注视。
    • Spherically interpolates from towards to by t.
      球形插值,通过t值from向to之间插值。
    • Interpolates from towards to by t and normalizes the result afterwards.
      通过t值from向to之间插值,并且规范化结果。
    • Rotates a rotation from towards to.
      旋转一个角度从from向to。
    • Returns the Inverse of rotation.
      返回反向的旋转。
    • Returns the angle in degrees between two rotations a and b.
      返回a和b两者之间的角度。
    • Returns a rotation that rotates z degrees around the z axis, x degrees around the x axis, and y degrees around the y axis (in that order).
      返回一个旋转角度,绕z轴旋转z度,绕x轴旋转x度,绕y轴旋转y度(像这样的顺序)。

Quaternion 四元数的更多相关文章

  1. [Unity Quaternion]四元数Quaternion的计算方式

    什么是Quaternion四元数 1843年,William Rowan Hamilton发明了四元数,但直到1985年才有一个叫Ken Shoemake的人将四元数引入计算机图形学处理领域.四元数在 ...

  2. Unity3D_(API)Quaternion四元数中的Quaternion.LookRotation()

    四元数百度百科: 传送门 四元数官方文档: 传送门 欧拉旋转.四元数.矩阵旋转之间的差异: 传送门 四元数转换为欧拉角eulerAngles 官方文档: 传送门 欧拉角转换为四元数Euler 官方文档 ...

  3. cocos2dx Quaternion 四元数(1/2)

    这篇文章只是我学完四元数之后的一些理解,其实是对别人理解的理解,有些地方我理解但是没有写下来,如果真的想深入的学习四元数,建议从学习复数开始. 这个知识点需要几何想象的天赋和学习的耐心,缺一不可,慢慢 ...

  4. 学习和研究下unity3d的四元数 Quaternion

    学习和研究下unity3d的四元数 Quaternion 今天准备学习和研究下unity3d的四元数 Quaternion 四元数在电脑图形学中用于表示物体的旋转,在unity中由x,y,z,w 表示 ...

  5. unity3d的四元数 Quaternion

    原地址:http://www.cnblogs.com/88999660/archive/2013/04/02/2995074.html 今天准备学习和研究下unity3d的四元数 Quaternion ...

  6. 关于Rotation和Quaternion的一些问题

    当我们使用unity的时候,面对一个物体,一个不可避免的问题就是:控制物体的旋转. unity的Transform组件的第二个属性Rotation为我们提供控制物体旋转的功能.在一个物体的Inspec ...

  7. three.js 欧拉角和四元数

    这篇郭先生就来说说欧拉角和四元数,欧拉角和四元数的优缺点是老生常谈的话题了,使用条件我就不多说了,我只说一下使用方法. 1. 欧拉角(Euler) 欧拉角描述一个旋转变换,通过指定轴顺序和其各个轴向上 ...

  8. 【腾讯Bugly干货分享】WebVR如此近-three.js的WebVR示例解析

    本文来自于腾讯bugly开发者社区,非经作者同意,请勿转载,原文地址:http://dev.qq.com/topic/57c7ff1689a6c9121b1adb16 作者:苏晏烨 关于WebVR 最 ...

  9. Unity3D 脚本手册

    1.private Ray ray;  --定义射线 ray = Camera.main.ScreenPointToRay(Input.mousePosition);  --摄像机发出的射线投射鼠标到 ...

随机推荐

  1. 牧场行走(LCA)

    神奇传送门 好吧,这题很有意思.. 第一眼撇的时候还以为是(SPFA)呜.... 然后发现要Q次询问就想到了LCA 但是发现不是求LCA.. 于是想到了一个神奇的定律: 两点的LCA一定在u到v的最短 ...

  2. 杭电oj2072

    因为一直不能ac先发这里,希望有看到的大佬能指点一二. 先讲一下我的基本思路,首先将一整行数据保存在数组中,接着遍历数组,根据空格将每个单词存入二维数组中,最后遍历二维数组,找出其中不同的单词并计数. ...

  3. create a large size empty file to measure transfer speed

    OS : Windows open cmd fsutil file createnew file_name 1073741824 // 1GB fsutil file createnew file_n ...

  4. 内核request_mem_region 和 ioremap的理解【转】

    转自:http://blog.csdn.net/skyflying2012/article/details/8672011 版权声明:本文为博主kerneler辛苦原创,未经允许不得转载. 几乎每一种 ...

  5. input 输入框 光标错位问题 、移动端输入框/input框光标错位问题、微信H5输入框/input框光标错位问题

    在IOS系统下的问题: 搜索出的建议如下: 你应该是用fixed定位做的弹出框,弹出框里面有文本框.fixed在ios上兼容不友好,会造成光标乱跳.建议用better-scroll,或者用absolu ...

  6. sklearn的常用函数以及参数

    sklearn可实现的函数或者功能可分为如下几个方面 1.分类算法2.回归算法3.聚类算法4.降维算法5.模型优化6.文本预处理 其中分类算法和回归算法又叫监督学习,聚类算法和降维算法又叫非监督学习 ...

  7. JAVA线程池调优

        在JAVA中,线程可以使用定制的代码来管理,应用也可以利用线程池.在使用线程池时,有一个因素非常关键:调节线程池的大小对获得最好的性能至关重要.线程池的性能会随线程池大小这一基本选择而有所不同 ...

  8. Python基础-迭代器&生成器&装饰器

    本节内容 迭代器&生成器 装饰器 Json & pickle 数据序列化 软件目录结构规范 作业:ATM项目开发 1.列表生成式,迭代器&生成器 列表生成式 我现在有个需求,看 ...

  9. SPRING CLOUD服务网关之ZUUL

    服务网关是微服务架构中一个不可或缺的部分.通过服务网关统一向外系统提供REST API的过程中,除了具备服务路由.均衡负载功能之外,它还具备了权限控制等功能.Spring Cloud Netflix中 ...

  10. POJ 3225.Help with Intervals-线段树(成段替换、区间异或、简单hash)

    POJ3225.Help with Intervals 这个题就是对区间的各种操作,感觉这道题写的一点意思都没有,写到后面都不想写了,而且更神奇的是,自己的编译器连结果都输不出来,但是交上就过了,也是 ...