Unity3D中通过四元数得到欧拉角
2016-11-27 22:54
260 查看
void Start () { gameObject.transform.rotation = QuaternionToEular(-89.0f,50.0f,100.0f); } // Update is called once per frame void Update () { } private Quaternion QuaternionToEular(float XX, float YY,float ZZ) { float X = XX /180* Mathf.PI; float Y = YY / 180 * Mathf.PI; float Z = ZZ / 180 * Mathf.PI; float x = Mathf.Cos(Y / 2) * Mathf.Sin(X / 2) * Mathf.Cos(Z/ 2) +Mathf.Sin(Y / 2) * Mathf.Cos(X / 2) * Mathf.Sin(Z/ 2); float y = Mathf.Sin(Y / 2)*Mathf.Cos(X/ 2)*Mathf.Cos(Z / 2) -Mathf.Cos(Y / 2)*Mathf.Sin(X/ 2)*Mathf.Sin(Z/ 2); float z= Mathf.Cos(Y / 2) * Mathf.Cos(X/ 2) * Mathf.Sin(Z/ 2)-Mathf.Sin(Y / 2) * Mathf.Sin(X/ 2) * Mathf.Cos(Z / 2); float w=Mathf.Cos(Y / 2)* Mathf.Cos(X / 2)* Mathf.Cos(Z/ 2) + Mathf.Sin(Y / 2)*Mathf.Sin(X / 2)*Mathf.Sin(Z / 2); Quaternion quataion = new Quaternion(x, y, z, w); return quataion; } }
通过四元数得到欧拉角,最后结果
计算过程中有一点点误差。但要注意万向锁。
相关文章推荐
- 通过某日期得到该日期所在的一周的周一和周日的日期
- 通过程序得到服务器上面的oracle数据库的版本号
- Unity3D-方向向量求欧拉角
- binbinyang---百度地图定位通过启动application. 一运行就能得到当前定位信息
- 通过windbg 得到我们要 hook 的api 地址的方法以及 hook NtOpenProcess 的例子。。。
- 通过地点名得到经纬度
- 通过反射得到object[]数组的类型并且的到此类型所有的字段及字段的值
- [VB.NET]反射问题,怎么通过动态创建的控件得到控件的方法!
- Unity3D的四元数 Quaternion
- 通过反编译得到 优酷视频 真实地址
- 通过反射得到某个实体的属性值
- php如何通过get方法发送http请求,并且得到返回的参数
- 通过POST请求得到数据,并添加到列表显示
- unity3d用欧拉角(eulerAngles)给刚体直接加速度(velocity )的算法举例
- Android 通过resource名称或者layout中定义的id name 去获取R.java中id,得到控件
- 通过IMAPIAdviseSink得到更改条目所在的Folder
- 旋转矩阵、四元数和欧拉角之间的转换——Matlab
- 通过调用栈得到当前方法的的名称
- 通过反射得到model的真实类型
- 通过acpi_device_hid 得到device的HID