我想要一个添加到场景中的节点指向北方。我从核心位置获取标题数据,以便表示设备当前在我的场景创建点处所面对的方向(以及我的根节点所面对的方向),然后我将标题添加到我的新sceneNode'
seulerAngles.y
中,以进行旋转所以它面向北方。
func renderer(_ renderer: SCNSceneRenderer, didRenderScene scene: SCNScene, atTime time: TimeInterval) {
if sceneNode == nil,
let heading = self.locationManager.heading {
sceneNode = SCNNode()
sceneNode.eulerAngles.y += Float(heading).degreesToRadians
sceneView.scene.rootNode.addChildNode(sceneNode)
}
}
标题信息是正确的,因此将其旋转这么多确实会将其旋转所需的量,假设标题与我的根节点所面对的方向相同。但是我发现我的根节点的方向不等于设备的方向,有时可能会非常偏离。所以这意味着标题与场景节点的“标题”相同的假设是不正确的,我需要能够知道它离标题有多远,这样我就可以在我的sceneNode
.