热门标签 | HotTags
当前位置:  开发笔记 > 开放平台 > 正文

三维刚体旋转之四元数

先来了解一下四元数的基本概念。一、复数的概念高中数学中有说到复数的概念,什么是复数呢?百度百科奉上:https:baike.baidu.comitem%E5%A4%8D%E6%95

先来了解一下四元数的基本概念。

一、复数的概念

高中数学中有说到复数的概念,什么是复数呢?

百度百科奉上:https://baike.baidu.com/item/%E5%A4%8D%E6%95%B0/254365?fr=aladdin

基本上你只需要了解,复数这玩意儿长这样:

  z = a + bi

ab是实数,i2 = -1是复数 z 的实部,bi 是复数 z 的虚部。

二、四元数是什么

四元数是一种高阶复数,他长这样:

(x,y,z,wxyz+w

其中:

i2 = j2 = k2 = −1;

ijk = -1;

我们可以对上述所提到的四元数q作如下改写:

= ((x,y,z),w) = (v⃗ + w)

这样一来,四元数可以看做是一个三维向量 v⃗ 和齐次坐标系下的 分量;

三、四元数运算

假定两个四元数 q1、q2

* 四元数乘法


  q1q2 = (v1 × v2 w1v2 w2v1 w1w2 − v1v2)

* 共轭四元数(三维向量方向取反)


  q∗ = (v ,w)

* 四元数的平方模(三维向量的模 + w分量的平方)


  N(q) N(v⃗ ) w2

* 四元数的逆(共轭四元数除以模)


  q1 q / N(q)
 
四、四元数实现旋转
 

 


推荐阅读
author-avatar
晓晓鱼美人
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有