ARKit3中ARBodyAnchor的jointsLocalTransforms / jointsModelTransforms的关节顺序是什么?
创始人
2024-09-13 12:01:50
0

ARKit 3 中的 ARBodyAnchor 的关节顺序是根据人体骨骼的标准顺序定义的。以下是关节顺序的标准列表:

  1. 根节点(Root)
  2. 脊柱(Spine)
  3. 胸部(Chest)
  4. 颈部(Neck)
  5. 头部(Head)
  6. 左肩(Left Shoulder)
  7. 左上臂(Left Upper Arm)
  8. 左下臂(Left Lower Arm)
  9. 左手腕(Left Hand)
  10. 右肩(Right Shoulder)
  11. 右上臂(Right Upper Arm)
  12. 右下臂(Right Lower Arm)
  13. 右手腕(Right Hand)
  14. 左髋部(Left Hip)
  15. 左大腿(Left Upper Leg)
  16. 左小腿(Left Lower Leg)
  17. 左脚踝(Left Foot)
  18. 右髋部(Right Hip)
  19. 右大腿(Right Upper Leg)
  20. 右小腿(Right Lower Leg)
  21. 右脚踝(Right Foot)

你可以使用以下代码示例来获取 ARBodyAnchor 的关节转换矩阵(jointsLocalTransforms 或 jointsModelTransforms):

func renderer(_ renderer: SCNSceneRenderer, didUpdate node: SCNNode, for anchor: ARAnchor) {
    guard let bodyAnchor = anchor as? ARBodyAnchor else { return }
    
    // 获取关节转换矩阵
    let jointTransforms = bodyAnchor.skeleton.jointModelTransforms
    
    // 输出关节转换矩阵(model space)
    for (index, jointTransform) in jointTransforms.enumerated() {
        let jointName = bodyAnchor.skeleton.jointNames[index]
        print("\(jointName): \(jointTransform)")
    }
}

在上面的代码中,我们首先检查 anchor 是否为 ARBodyAnchor,然后获取关节转换矩阵 jointModelTransforms。接下来,我们使用循环遍历 jointTransforms 数组,并输出每个关节的名称和转换矩阵。

请注意,在 ARKit 3 中,我们可以使用 jointsLocalTransforms 或 jointsModelTransforms 属性来获取关节的转换矩阵。jointsLocalTransforms 是相对于 ARBodyAnchor 的局部坐标系计算的,而 jointsModelTransforms 是相对于世界坐标系(SceneKit 中的根节点)计算的。

希望这可以帮助到你!

相关内容

热门资讯

银河麒麟V10SP1高级服务器... 银河麒麟高级服务器操作系统简介: 银河麒麟高级服务器操作系统V10是针对企业级关键业务...
不能访问光猫的的管理页面 光猫是现代家庭宽带网络的重要组成部分,它可以提供高速稳定的网络连接。但是,有时候我们会遇到不能访问光...
【NI Multisim 14...   目录 序言 一、工具栏 🍊1.“标准”工具栏 🍊 2.视图工具...
Android|无法访问或保存... 这个问题可能是由于权限设置不正确导致的。您需要在应用程序清单文件中添加以下代码来请求适当的权限:此外...
AWSECS:访问外部网络时出... 如果您在AWS ECS中部署了应用程序,并且该应用程序需要访问外部网络,但是无法正常访问,可能是因为...
北信源内网安全管理卸载 北信源内网安全管理是一款网络安全管理软件,主要用于保护内网安全。在日常使用过程中,卸载该软件是一种常...
​ToDesk 远程工具安装及... 目录 前言 ToDesk 优势 ToDesk 下载安装 ToDesk 功能展示 文件传输 设备链接 ...
AWSElasticBeans... 在Dockerfile中手动配置nginx反向代理。例如,在Dockerfile中添加以下代码:FR...
AsusVivobook无法开... 首先,我们可以尝试重置BIOS(Basic Input/Output System)来解决这个问题。...
ASM贪吃蛇游戏-解决错误的问... 要解决ASM贪吃蛇游戏中的错误问题,你可以按照以下步骤进行:首先,确定错误的具体表现和问题所在。在贪...