c# - 有没有一种方法可以在 C# Unity 中返回(旋转)四元数的 y 分量?
问题描述
因此,在 Unity 编辑器中,旋转的 y 分量显示在变换选项卡中。
它在编辑器中看起来像这样:Rotation X[some number] Y[some number] Z[some number]。
我希望获得 Y 旁边的“某个数字”,但是,我似乎无法直接将四元数分配给双精度数。似乎应该有一种方法可以快速找到这个值,但是,我在文档中找不到任何东西。我需要这个值才能对其执行简单的正弦和余弦。
是否有一种简单的方法可以将其中一个值作为双精度值返回?
解决方案
四元数由三个虚部和一个实部组成,不能直接编辑。但是,Unity 的 Quaternion 类提供了有用的快捷方式,让您可以这样做,请看以下示例:
Vector3 asEuler = myQuaternion.eulerAngles;
asEuler.y = 123.5f;
myQuaternion = Quaternion.Euler(asEuler);
第一行执行到欧拉表示的转换,这就是您在检查器中看到的那个,它具有 x、y 和 z,它们都是实数(单个)值。在第二行中,有一个明显的值分配。最后,在第三行中,从欧拉表示转换回四元数。
推荐阅读
- git - 恢复本地提交
- java - 使用嵌套的 TestConfiguration 覆盖 Spring Boot 2.1 切片测试中的 bean
- angular - 标识符的定义与另一个文件中的定义冲突
- html - 带有文本的图标位于它旁边
- python - 在OpenCV中,放大图像后,如何回到标准鼠标光标?
- css - 如何在我的 CSS 代码中修复此语法错误?
- vhdl - 使用 Microsemi FPGA 的 vhdl 平均值中的奇怪行为
- python - 可变小费计算器输入
- python - Selenium,根据“onclick”值选择
- python - Kivy - 标签有时(随机)不添加到画布上