博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
欧拉角(Euler angle) & 万向节死锁(Gimbal Lock) & 四元数(Quaternion)
阅读量:2135 次
发布时间:2019-04-30

本文共 324 字,大约阅读时间需要 1 分钟。

      欧拉角和四元数都能表示一个旋转,同样还有转换矩阵也能表示一个旋转,它们三者之间可以互相转换     

      在3D图形学中,最常用的旋转表示方法便是四元数和欧拉角,比起矩阵来具有节省存储空间和方便插值的优点

 

欧拉角

也叫姿态角

用一句话说,欧拉角就是物体绕坐标系三个坐标轴(x,y,z轴)的旋转角度。

 

 

万向节死锁

 

 

四元数

为何要引入四元数?首先是因为欧拉角有万向节死锁的问题。

四元数存在于四维空间,其中用到了复数

四元数相比其他形式的优点:

  • 解决万向节死锁(Gimbal Lock)问题
  • 仅需存储4个浮点数,相比矩阵更加轻量
  • 四元数无论是求逆、串联等操作,相比矩阵更加高效

现在主流游戏或动画引擎都会以缩放向量+旋转四元数+平移向量的形式进行存储角色的运动数据。

 

 

 

 

 

转载地址:http://raygf.baihongyu.com/

你可能感兴趣的文章
分析C语言的声明
查看>>
TCP为什么是三次握手,为什么不是两次或者四次 && TCP四次挥手
查看>>
C结构体、C++结构体、C++类的区别
查看>>
进程和线程的概念、区别和联系
查看>>
CMake 入门实战
查看>>
绑定CPU逻辑核心的利器——taskset
查看>>
Linux下perf性能测试火焰图只显示函数地址不显示函数名的问题
查看>>
c结构体、c++结构体和c++类的区别以及错误纠正
查看>>
Linux下查看根目录各文件内存占用情况
查看>>
A星算法详解(个人认为最详细,最通俗易懂的一个版本)
查看>>
利用栈实现DFS
查看>>
逆序对的数量(递归+归并思想)
查看>>
数的范围(二分查找上下界)
查看>>
算法导论阅读顺序
查看>>
Windows程序设计:直线绘制
查看>>
linux之CentOS下文件解压方式
查看>>
Django字段的创建并连接MYSQL
查看>>
div标签布局的使用
查看>>
HTML中表格的使用
查看>>
(模板 重要)Tarjan算法解决LCA问题(PAT 1151 LCA in a Binary Tree)
查看>>