当前位置:网站首页>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);
边栏推荐
- Transformer详细解读与预测实例记录
- I/O performance and reliability
- Mina断线重连
- Mina的长连接和短连接
- Browser Storage for H5
- 程序员应该这样理解I/O
- 请问下通过flink sql读取hologres 的两张表的 binlog,然后如何进行join?
- Autoware--Beike Tianhui rfans lidar uses the camera & lidar joint calibration file to verify the fusion effect of point cloud images
- Mongodb query analyzer parsing
- flink cdc 目前支持Gauss数据库源吗
猜你喜欢
[问题已处理]-jenkins流水线checkout超时
input详解之文件上传
Into the pre-service, thought they play so flowers
Vim tutorial: vimtutor
Mina's long and short connections
spark operator - map vs mapPartitions operator
Mina的长连接和短连接
King power volume LinkSLA, realize operations engineer is happy fishing
vim教程:vimtutor
Configuration of routers and static routes
随机推荐
Transformer详细解读与预测实例记录
spark operator - map vs mapPartitions operator
time complexity and space complexity
[问题已处理]-虚拟机报错contains a file system with errors check forced
Seven Ways to Center a Box Horizontally and Vertically
网络不通?服务丢包?看这篇就够了
disabledDate 日期选择器 datePicker
用户和用户组管理、文件权限管理
618,你也许可以清醒亿点点
The hook of the operation of the selenium module
selenium learning
VRRP概述及实验
ALC实验
King power volume LinkSLA, realize operations engineer is happy fishing
NAT实验
[Problem has been resolved]-Virtual machine error contains a file system with errors check forced
教您简单几步实现工业树莓派正确安装RS232转USB驱动
NAT experiment
[ingress]-ingress exposes services using tcp port
[issue resolved] - jenkins pipeline checkout timeout