Есть ли у ARCore методы делегирования сессии, как у ARKit? - PullRequest
1 голос
/ 22 апреля 2019

В ARKit есть протокол ARSessionDelegate, который имеет 4 основных метода, которые вы можете реализовать для получения захваченных изображений видеокадров и состояния отслеживания из сеанса AR.

Имеет ли ARCore API аналогичный протокол (интерфейс) с аналогичными методами?

protocol ARSessionDelegate

override func viewDidLoad() {  
      super.viewDidLoad()
      sceneView.session.delegate = self
}
  1. Этот метод предоставляет вновь захваченное изображение ARCamera и сопровождающую информацию AR делегату:
func session(ARSession, didUpdate: ARFrame) { ... }
  1. Этот метод сообщает делегату, что один или несколько ARAnchors были добавлены в сеанс:
func session(ARSession, didAdd: [ARAnchor]) { ... }
  1. Этот метод сообщает делегату, что ARSession настроил свойства одного или нескольких ARAnchors:
func session(ARSession, didUpdate: [ARAnchor]) { ... }
  1. Этот метод сообщает делегату, что один или несколько ARAnchors были удалены из ARSession:
func session(ARSession, didRemove: [ARAnchor]) { ... }

Если в ARCore существуют похожие методы (даже не все), пожалуйста, покажите мне, как они выглядят с использованием кода Kotlin.

Любая помощь приветствуется.

1 Ответ

1 голос
/ 23 апреля 2019

Изучив документацию ARCore, я обнаружил, по крайней мере, два похожих метода:

Первый : этот метод используется для получения нового кадра камеры, обновления местоположения устройства, обновления местоположения якорей отслеживания, обновления обнаруженных самолетов и т. Д.

ArStatus ArSession_update(ArSession *session, ArFrame *out_frame)

Секунда : Этот метод определяет отслеживаемое местоположение в физическом мире:

ArStatus ArSession_acquireNewAnchor(ArSession *session, const ArPose *pose, ArAnchor **out_anchor)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...