Swift SceneKit摄像头未移动到正确位置

Swift SceneKit摄像头未移动到正确位置,swift,xcode,scenekit,swift-playground,Swift,Xcode,Scenekit,Swift Playground,我在太阳系的雨燕游乐场工作。如果单击行星,我想让相机放大行星。目前我遇到的问题是相机无法放大到正确的位置。这是我正在使用的代码 public let camera = SCNNode() camera.camera = SCNCamera() camera.position = SCNVector3(x: 0, y: -70, z: 50) camera.eulerAngles = SCNVector3(x: 0.74533, y: 0, z: 0) let location = planet

我在太阳系的雨燕游乐场工作。如果单击行星,我想让相机放大行星。目前我遇到的问题是相机无法放大到正确的位置。这是我正在使用的代码

public let camera = SCNNode()
camera.camera = SCNCamera()
camera.position = SCNVector3(x: 0, y: -70, z: 50)
camera.eulerAngles = SCNVector3(x: 0.74533, y: 0, z: 0)

let location = planetNodes[i].convertPosition(planetNodes[i].position, to: camera)
let radius = planetNodes[i].position.y
let moveCameraAc = SCNAction.move(to: location, duration: 2)
moveCameraAc.timingMode = .easeInEaseOut
camera.runAction(moveCameraAc)
它将始终移动到场景中的其他位置。我不知道它是怎么找到去哪里的


提前谢谢

我已经弄明白了!代码需要看起来像

let location = holderNodes[i].convertPosition(planetNodes[i].position, to: scene.rootNode)

holderNodes[i]是planetNodes[i]和scene的父节点。rootNode是摄影机的父节点。

我认为您应该将行星的位置转换为摄影机的父节点,而不是摄影机本身。感谢您的反馈。父节点是scene.rootNode。我试过了,但也没用。你知道还有什么不对劲吗?