我正在尝试打印 ARsession 的参数,如下所示。当我在会话中执行此操作时,它会起作用。
func session(_ session: ARSession, didUpdate frame: ARFrame) {
guard let arCamera = session.currentFrame?.camera else { return }
print("ARCamera ProjectionMatrix = \(arCamera.projectionMatrix)")
}
结果:
ARCamera ProjectionMatrix = simd_float4x4([[1.774035, 0.0, 0.0, 0.0], [0.0, 2.36538, 0.0, 0.0], [-0.0011034012, 0.00073593855, -0.99999976, -1.0], [0.0, 0.0, -0.0009999998, 0.0]])
但是,我想在单击按钮时访问/打印参数。我尝试了以下方法:
@IBAction private func startPressed() {
print(ARSession.init().currentFrame?.camera.projectionMatrix)
}
但上面的结果返回nil
。我是否遗漏了一些明显的东西,有人可以帮助我解决这个问题,以便在单击按钮时可以正确访问相机参数吗?
提前致谢!