一文详解四元数、欧拉角、旋转矩阵、轴角如何相互转换

  • 简介
  • 欧拉角与旋转矩阵
    • 欧拉角---->旋转矩阵
    • 旋转矩阵---->欧拉角
  • 四元数与旋转矩阵
    • 四元数---->旋转矩阵
    • 旋转矩阵---->四元数
  • 欧拉角与四元数
    • 欧拉角---->四元数
    • 四元数---->欧拉角
  • 轴角
    • 轴角---->四元数
    • 轴角---->旋转矩阵

简介

欧拉角与旋转矩阵

欧拉角---->旋转矩阵

D3D和OpenGL不同,用的坐标系是Y轴竖直向上的左手系,所以欧拉角的顺规是跟广大blog、OpenGL不一样的,那么博客上、甚至维基百科[2]上的各种基于右手系xyz顺规(分别对应roll, pitch,yaw)的看起来就不太能随随便便直接用了。

首先欧拉角旋转序列(Euler Angle Rotational Sequence)一共有12种顺规,6种绕三条轴的旋转(也叫Tait-Bryan Angle,XYZ,XZY,YXZ,YZX,ZXY,ZYX),另外6种只绕两条轴的旋转(也叫Proper Euler Angle,XYX,YXY,XZX,ZXZ,YZY,ZYZ)。如果相邻两次旋转是绕同一条轴,例如XXY,那么其实可以坍缩成XY。那么只绕一条轴旋转就根本不够自由度就不需要说了。也就是说,一共有12种基础旋转的组合顺序,它们可以旋转出三维的所有旋转状态。所以一共是12种旋转顺规(可以表示所有旋转的集合),DirectXMath库采用的是ZXY顺规,分别对应着Z-Roll,X-Pitch,Y-Yaw。


其实可以不用自己推的,维基百科把12种顺规乘出来的矩阵都写出来了

旋转矩阵---->欧拉角


四元数与旋转矩阵

四元数---->旋转矩阵

旋转矩阵---->四元数

欧拉角与四元数

欧拉角---->四元数

四元数---->欧拉角

轴角

轴角---->四元数

轴角---->旋转矩阵


一文详解四元数、欧拉角、旋转矩阵、轴角如何相互转换相关推荐

  1. Python-Matplotlib可视化(10)——一文详解3D统计图的绘制

    Python-Matplotlib可视化(10)--一文详解3D统计图的绘制 前言 3D散点图 3D曲线图 3D标量场 绘制3D曲面 在3D坐标轴中绘制2D图形 3D柱形图 系列链接 前言 Matpl ...

  2. 一文详解Pandas

    一文详解Pandas 一.Pandas概述 二.Pandas数据结构 2.1 Series 2.2 DataFrame数据结构 二.数学与统计计算 三.DataFrame的文件操作 3.1 读取文件 ...

  3. 一文详解JavaBean 看这篇就够了

    一文详解JavaBean 看这篇就够了 JavaBean的历史渊源 JavaBean的定义(通俗版) JavaBean应用 < jsp:useBean > < jsp:getProp ...

  4. 【卷积神经网络结构专题】一文详解AlexNet(附代码实现)

    关注上方"深度学习技术前沿",选择"星标公众号", 资源干货,第一时间送达! [导读]本文是卷积神经网络结构系列专题第二篇文章,前面我们已经介绍了第一个真正意义 ...

  5. 一文详解 YOLO 2 与 YOLO 9000 目标检测系统

    一文详解 YOLO 2 与 YOLO 9000 目标检测系统 from 雷锋网 雷锋网 AI 科技评论按:YOLO 是 Joseph Redmon 和 Ali Farhadi 等人于 2015 年提出 ...

  6. 一文详解决策树算法模型

    AI有道 一个有情怀的公众号 上文我们主要介绍了Adaptive Boosting.AdaBoost演算法通过调整每笔资料的权重,得到不同的hypotheses,然后将不同的hypothesis乘以不 ...

  7. 「软件项目管理」一文详解软件配置管理计划

    一文详解软件配置管理计划 前言 一.配置管理概述 1. 配置管理(SCM)定义 2. 软件配置项目(SCI) 3. 基线 4. 软件配置控制委员会(SCCB) 二.软件配置管理过程 1. 管理过程 2 ...

  8. 「软件项目管理」一文详解软件项目质量计划

    一文详解软件项目质量计划

  9. 「软件项目管理」一文详解软件项目管理概述

    一文详解软件项目管理概述

最新文章

  1. C# 给某个方法设定执行超时时间
  2. IO多路复用之epoll总结
  3. Idea快速生成War包
  4. 在查询语句中使用 NOLOCK 和 READPAST
  5. prometheus-net.DotNetRuntime 获取 CLR 指标原理解析
  6. mysql数据库安装教程32位,看这一篇就够了!
  7. 关于windows10 CMD 的一些操作
  8. 17 FI配置-财务会计-定义雇员的容差组
  9. java环境配置 Windows10
  10. 爱心的浪漫永不过时—程序猿的小浪漫
  11. [iOS]ARC和MRC下混编
  12. TrueNAS CORE是什么
  13. PHP如何获取txt中的文字
  14. 数据库设计中的14个技巧(转载)
  15. 在线JSON转HTML,TABLE表格工具
  16. leetcode 打印从1到最大的n位数
  17. 2019年微博用户画像_2019年您需要了解的有关用户的信息
  18. Windows如何关闭自动更新
  19. 前端Vue、后端SSM、前后端分离项目服务器部署实战
  20. 世界500强榜单出炉:中国公司首进三强 沃尔玛居首

热门文章

  1. byte json 互转_golang []byte转json和json转[]byte
  2. 计算机网络笔记:计算机网络体系结构
  3. qq邮箱smtp服务地址
  4. java数组长度为0和数组为null
  5. 电脑怎么恢复被篡改的默认浏览器
  6. 安装了Tomcat Plugin插件,为什么没有出现三个Tomcat的猫图标的解决方法
  7. 第二天 echo语句与分界符EOF
  8. JAVA课程设计 小学生数学练习题目自动生成系统
  9. docker 镜像源大全
  10. 前端学习梳理——wsdchong