当前位置:网站首页>四元数简介
四元数简介
2022-06-12 22:20:00 【ZEKEGU1997】
图形学中的旋转主要分两种:欧拉旋转和轴角式旋转。
欧拉曾经证明过,任何旋转都可以表示为物体绕自身三轴的旋转。所以欧拉旋转就是物体以特定的顺序,依次绕自身的三轴进行的旋转。但是这种旋转在绕第二个轴旋转90°时会失去一个自由度,导致万向节锁的现象。
轴角式,顾名思义是绕某个特定轴旋转某个角度,通过四元数和Rodriguez公式都可以表示这一旋转过程。
复数可以表示为a+bi,其中i²=-1,而复数的相乘与矩阵相乘可以看做是等价的。四元数与复数相似但不是复数。四元数的定义a+bi+cj+dk,其中i²=j²=k²=ijk=-1。令向量V=(b,c,d),则四元数也可表示为[a,V]。四元数和矩阵一样,不满足乘法的交换律。
对于一个向量V,将其表示为v=[0,V],令q=[cos(θ/2),sin(θ/2)U],其中U为旋转轴,θ为绕轴旋转的角度。则v'=qvq*,q*为q的共轭,v'就是V绕U轴旋转θ后的结果。
四元数的另一个优点是可以比较方便地进行插值,从而产生较为平滑的连续旋转。插值的方法有:Lerp,NLerp,Slerp.
边栏推荐
- JVM Basics - > What are the JVM parameters?
- Preliminary use of jvisualvm
- How to perform disaster recovery and recovery for kubernetes cluster? (22)
- 年薪50万是一条线,年薪100万又是一条线…...
- 【数据分析】基于 kmeans实现数据聚类分组含Matlab源码
- be careful! Your Navicat may have been poisoned
- The interface testing tool apipos3.0 is applicable to process testing and reference parameter variables
- 在同花顺开户证券安全吗,买股票怎么网上开户
- Redis optimization
- Is it safe to open an account in tonghuashun? How to open an account
猜你喜欢

QT quick 3D learning: mouse picking up objects

The programmer dedicated to promoting VIM has left. Father of vim: I will dedicate version 9.0 to him

Mysql concat_ws、concat函数使用

Ansible playbook and ansible roles (III)

ShardingSphere-proxy-5.0.0部署之分表实现(一)

"Oracle database parallel execution" technical white paper reading notes

数据库每日一题---第10天:组合两个表

You can move forward or backward. This function in idea is amazing!

C # reading table data in word

How to prevent phishing emails? S/mime certificate to help!
随机推荐
微信小程序提现功能
Research Report on market supply and demand and strategy of tizanidine industry in China
[proteus simulation] simple digital tube timer clock
JVM Basics - > What are the thread shared areas in the JVM
How to abstract a problem into a 0-1 knapsack problem in dynamic programming
Thread safe level
Ansible PlayBook et ansible roles (3)
About the solution to "the application cannot start normally 0xc00000022" after qt5.15.2 is installed and qtcreator is started
【LeetCode】69. x 的平方根
Preliminary use of jvisualvm
在同花顺开户安全么 ,证券开户怎么开户流程
Ansible roles project case (IV)
What is your understanding of thread priority?
USB mechanical keyboard changed to Bluetooth Keyboard
【LeetCode】数组中第K大的元素
【LeetCode】102. 二叉树的层序遍历
Implementation of master-slave replication and master-master replication for MySQL and MariaDB databases
Generate the chrysanthemum code of the applet (generate the chrysanthemum code, change the middle logo, change the image size, and add text)
打新债开户安全么,新手该怎么操作?
Role of volatile keyword