当前位置:网站首页>D39_Eulerian Angles and Quaternions
D39_Eulerian Angles and Quaternions
2022-08-05 06:32:00 【Not so simple GG】
Table of Contents
5. Cross product of quaternions
1. Euler Angles
Consists of three angles (x, y, z), which are used to describe the rotation of an object in a specific coordinate system
The rotation adjusted by the Inspector panel is the Euler angle transform.eulerAngles
Eulerian angles are intuitive and easy to understand, but one disadvantage is the universal lock (please encyclopedia)
Unity uses y→x→z
2. Quaternion
Quaternion
A quaternion consists of a scalar and a 3D element [w,(x,y,z)]
Meaning: Represents a rotation in 3D space
Given the rotation, assuming that the rotation is about the N axis, the rotation is θ degrees, and the N axis is (x, y, z), then it constitutes a quaternion
Q=[cos(θ/2),sin(θ/2)*x,sin(θ/2)*y,sin(θ/2)*z]
Constructing a quaternion from axis-angle pairs Quaternion.AngleAxis
Euler angle conversion to quaternion Quaternion.Euler
Quaternion to Euler Angles .eulerAngles
3. Negative Quaternion
q[w,(x,y,z)] -q[-w,(-x,-y,-z)]
Geometric meaning: q and -q represent the same amount of rotation
4.Unit Quaternion
q[1,0,0,0] -q[-1,0,0,0]
Quaternion.identity
Geometric meaning: represents a quaternion without a rotation angle
5. QuaternionThe cross product of
The result obtained by multiplying a quaternion by a quaternion is still a quaternion
Geometric meaning: The new quaternion obtained by the cross product of two quaternions is the superposition of the two quaternion rotations
transform.rotation*=Quaternion.AngleAxis();
The cross product of a quaternion and a vector can get a new vector that rotates according to the rotation direction of the quaternion
Note: Only the quaternion * vector operator is overloaded in the quaternion, and there is no overloaded vector * quaternion operator, so only
Vector3 dir=Quaternion.AngleAxis()*Vector3.forward;
Quaternion.LookRotation(); Passing a vector as a parameter can get the angle required to turn the positive direction of the object to the vector
6. Quaterniondifference
Quaternion.Slerp(a,b,t);
边栏推荐
猜你喜欢
DevOps process demo (practical record)
selenium learning
NIO works is analysed
ALC experiment
实力卷王LinkSLA,实现运维工程师快乐摸鱼
network issue?Service packet loss?This is enough
sql server duplicate values are counted after
LinkSLA insists that users come first and creates a sustainable operation and maintenance service plan
DisabledDate date picker datePicker
Vim tutorial: vimtutor
随机推荐
wc, grep, tar, vi/vim
What is Alibaba Cloud Express Beauty Station?
One-arm routing experiment and three-layer switch experiment
深度 Zabbix 使用指南——来自惨绿少年
7 steps to complete cloud monitoring
错误记录集锦(遇到则记下)
Transformer interprets and predicts instance records in detail
媒体查询、rem移动端适配
Small example of regular expression--remove spaces in the middle and on both sides of the string
Operation and maintenance engineer, come and pick up the wool
LinkSLA insists that users come first and creates a sustainable operation and maintenance service plan
Network Troubleshooting Basics - Study Notes
Cloud computing - osi seven layers and TCP\IP protocol
程序员应该这样理解I/O
RAID disk array
Teach you simple steps to achieve industrial raspberries pie properly installed RS232 USB drive
LeetCode练习及自己理解记录(1)
跨域的十种解决方案详解(总结)
产品学习资料
Difference between link and @improt