gpt4 book ai didi

ios - 在 3d 空间中对 UIGestureRecogniser 进行 HitTest

转载 作者:行者123 更新时间:2023-11-29 02:38:12 25 4
gpt4 key购买 nike

我对 iOS 的 SceneKit 相当陌生,并且遇到了关于 3d 场景中用户交互的困境:

我在 SCNView 中有一组 SCNNode 立方体,并且希望能够精确定位用户触摸给定立方体网格的位置,如下所示一个 3d 坐标(以便稍后根据触摸向量操纵场景)。目前,我一直在使用 UIGestureRecognizer 来实现基本的 HitTest ,但这似乎仅限于返回 2d 点。

当想要对整个节点本身进行 HitTest 时,这不是问题,因为这可以通过 SCNView 中的 UIGestureRecognizer 的 hittest 方法来实现。但是,对于如何根据坐标(即 SCNVector3)精确定位触摸落在节点上的位置,有人有任何建议吗?

谢谢!

最佳答案

SCNView 上调用 hitTest:options: 是正确的。正如您可能已经看到的那样,它会生成一个 SCNHitTestResults 数组。

HitTest 结果可以告诉您有关命中的许多信息,其中之一就是命中了哪个节点。您正在寻找的是 localCoordinatesworldCoordinates

本地 坐标是相对于被击中的节点的。由于您问的是“如何精确定位触摸落在节点上的位置”,这可能就是您要找的那个。

世界坐标是相对于根节点的。

关于ios - 在 3d 空间中对 UIGestureRecogniser 进行 HitTest ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26096347/

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