Как получить последний обнаруженный самолет в ARCore? - PullRequest
0 голосов
/ 03 октября 2019

То, чего я пытаюсь добиться - это разместить модель перед пользователем, не касаясь самолета. Для этого я пытаюсь получить последнюю версию Plane из метода onUpdate, а затем plane.centerPose из него.

val plane = frame.getUpdatedTrackables(Point::class.java).last();
universalAnchorNode = AnchorNode(arFragment?.arSceneView?.session?.createAnchor(plane.centerPose))

С чем я сталкиваюсь, в большинстве случаев это все еще дает мне предыдущий План вместо того, чтобы давать мне обновленную позу.

Я хочу получить обновленную позу в методе onUpdate.

1 Ответ

0 голосов
/ 19 октября 2019

Получить текущий кадр.

arSceneView.scene.addOnUpdateListener {
    frame = arSceneView.arFrame ?: return@addOnUpdateListener
}

Затем вы можете извлечь плоскость

val plane = frame.getUpdatedTrackables(Plane::class.java)
...