【问题标题】:How to convert camera coordinates to coordinate-space of scene?如何将相机坐标转换为场景的坐标空间?
【发布时间】:2019-02-14 05:33:35
【问题描述】:

我试图在我制作的场景中找到相机的坐标,但我最终得到了不同系统中的坐标。坐标如(0.0134094329550862,在场景坐标系中大概是1cm,同时移动不止。

我这样做是为了获取坐标:

let cameraCoordinates = self.sceneView.pointOfView?.worldPosition

self.POSx = Double((cameraCoordinates?.x)!)
self.POSy = Double((cameraCoordinates?.y)!)
self.POSz = Double((cameraCoordinates?.z)!)

【问题讨论】:

    标签: ios swift scenekit augmented-reality arkit


    【解决方案1】:

    这就是我找到相机坐标及其方向的方法。

    func getUserVector() -> (SCNVector3, SCNVector3) {
        if let frame = self.sceneView.session.currentFrame {
            let mat = SCNMatrix4(frame.camera.transform)
            let dir = SCNVector3(-1 * mat.m31, -1 * mat.m32, -1 * mat.m33)
            let pos = SCNVector3(mat.m41, mat.m42, mat.m43)
            return (dir, pos)
        }
        return (SCNVector3(0, 0, -1), SCNVector3(0, 0, -0.2))
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-09-02
      • 1970-01-01
      • 2021-09-29
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多