0
我有一个sceneView
我加载了一个3d模型。模型显示正常,我可以控制它触摸屏幕。Swift 3 - SceneKit获取三维模型X Y Z旋转值
我需要的是在3D模型旋转时获取X,Y,Z旋转的值。
我怎样才能实时获得这个值?
我试图使用相机旋转与手势识别器,但他们不更新。
override func viewDidLoad() {
super.viewDidLoad()
sceneView.scene = SCNScene(named: "PKB2");
sceneView.autoenablesDefaultLighting = true
sceneView.allowsCameraControl = true
// add a tap gesture recognizer
let tapGesture = UITapGestureRecognizer(target: self, action:
#selector(handleTap(_:)))
sceneView.addGestureRecognizer(tapGesture)
}
func handleTap(_ gestureRecognize: UIGestureRecognizer) {
// retrieve the SCNView
let cameraNode = SCNNode()
cameraNode.camera = SCNCamera()
print(cameraNode.rotation)
}
谢谢..明白了。用两根手指移动物体时,有没有办法只禁用相机的位置?我只想旋转e变焦启用 – SNos
不使用'allowsCameraControl'时。 SceneKit团队仅将该属性视为调试工具。 iOS 11增加了许多有用的功能来控制相机,但现在您必须手动响应事件并更改节点位置。检查[this](https://stackoverflow.com/questions/25654772/rotate-scncamera-node-looking-at-an-object-around-an-imaginary-sphere#25674762)作为起点 – orangenkopf