gpt4 book ai didi

swift - ARKit – eulerAngles of Transform Matrix 4x4

转载 作者:行者123 更新时间:2023-12-03 12:39:58 25 4
gpt4 key购买 nike

在我的项目中,我有一个变换,我想在 eulersAngles 中获得该变换的方向。 .

我如何获得 eulerAngles来自 4 的变换x 4 Swift 语言中的矩阵?

我至少需要 Pitch , 我可能需要 Yaw我可能需要 Roll .

最佳答案

eulerAngles instance property is used for node’s orientation, expressed as pitch, yaw, and roll angles in radians.


var eulerAngles: SCNVector3 { get set }

组件顺序如下:
  • 音高 ( X 分量)是围绕节点 X 的旋转-轴
  • 偏航 ( Y 分量)是围绕节点 Y 的旋转-轴
  • ( Z 分量)是围绕节点 Z 的旋转-轴

  • 使用 eulerAngles实例属性比使用 简单得多轮换4 x 4矩阵 . ARKit 和 SceneKit 框架使用 4 x 4变换矩阵平移、旋转、缩放和剪切 3D 对象。让我们看看它们是如何工作的:

    身份 4 x 4矩阵内部有 16 个元素:

    enter image description here

    在这 16 个元素之间有 6 个不同的剪切系数:
    shear XY
    shear XZ
    shear YX
    shear YZ
    shear ZX
    shear ZY

    在剪切矩阵中,它们如下:

    enter image description here

    因为 没有Rotation coefficients完全在这个矩阵中,六个 Shear coefficients连同三个 Scale coefficients允许您围绕 X 旋转 3D 对象, Y , 和 Z轴使用神奇的三角函数( sincos )。

    这是一个如何围绕其 Z 旋转 3D 对象 (CCW) 的示例使用剪切和缩放元素的轴:

    enter image description here

    使用剪切和缩放元素查看 3 种不同的旋转模式(俯仰、偏航和滚动):

    enter image description here

    翻译 4 x 4矩阵看起来像这样:

    enter image description here

    希望这可以帮助。

    关于swift - ARKit – eulerAngles of Transform Matrix 4x4,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50236214/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com