gpt4 book ai didi

swift - 检查 SCNNode 是否在 View 中重叠

转载 作者:行者123 更新时间:2023-11-30 10:50:21 25 4
gpt4 key购买 nike

如何检测SCNView中两个SCNNode是否重叠?它们被添加到不同的 x 和 z 轴位置,但从相机的角度来看,它们看起来像是重叠在一起的。我想检测到这一点,然后向上或向下移动其中一个。 enter image description here

最佳答案

对于那些以后会遇到这个问题的人......我用 simdWorldPosition 修复了这个问题SCNNode 的属性。这是代码:

let overlapping = wayNamedLocationNode.infoTextNodes.filter { overlappingTextNode in
let x = abs(overlappingTextNode.simdWorldPosition.x - textNode.simdWorldPosition.x)
let z = abs(overlappingTextNode.simdWorldPosition.z - textNode.simdWorldPosition.z)
if ((x < 4 && x > 0) || (z < 4 && z > 0)) {
return true
} else {
return false
}
}
if overlapping.count > 0 {
overlapping.forEach { $0.removeFromParentNode() }
}

首先,我找到了所有重叠的节点,然后我只是将它们从父节点中删除。

关于swift - 检查 SCNNode 是否在 View 中重叠,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54724395/

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