ARSCNView вопрос ориентации - PullRequest
0 голосов
/ 06 ноября 2018

У меня есть viewController 1, который представляет viewController с ARSCNView. между транзакциями viewControllers, ориентация изменяется, вся ориентация пользовательского интерфейса находится на месте, но вид камеры ARSCNView находится в неправильном месте

(рамка просмотра находится в текущем местоположении, но изображение с камеры перевернуто или влево)

Когда я поворачиваю телефон к портрету и обратно, все смотрят, находят.

  • ARSCNView в пользовательском представлении

    class MyARSceneView :UIView {
        @IBOutlet private weak var sceneView: ARSCNView!
    
        private func loadViewFromNib() -> UIView {
        let bundle = Bundle(for: type(of: self))
        let nib:UINib = UINib(nibName: self.nibName, bundle: bundle)
        // Assumes UIView is top level and only object in CustomView.xib file
        let view = nib.instantiate(withOwner: self, options: nil)[0] as! UIView
        return view
        }
    
        ....
    }
    
  • ARViewContoller:

    class ARViewController : UIViewController {
        @IBOutlet weak var arSceneView: FBARSceneView!
    
        override func viewDidLoad() {
            appDelegate.enableAllOrientation = true
            super.viewDidLoad()
        }
    
        func presentARViewController() {
             self.annotationView = UIStoryboard.arViewController()
             viewController.present(annotationView!, animated: true) {
            self.setUpARViewController()
            completion?()
        }
    }
    
  • в приложенииDeleagte:

    func application(_ application: UIApplication, supportedInterfaceOrientationsFor window: UIWindow?) -> UIInterfaceOrientationMask
    {
        if  enableAllOrientation == true  {
            return UIInterfaceOrientationMask.allButUpsideDown
        }
        return UIInterfaceOrientationMask.portrait
    }
    

после вызова функции presentARViewController отображается новый экран, но вид камеры находится в неправильной ориентации.

Wrong orientation

...