如何在ARCore中获取最新的检测到的飞机?

问题描述 投票:0回答:1

我试图实现的是将模型放置在用户面前,而无需在飞机上轻敲。为此,我试图从onUpdate方法中获取最新的Plane,然后从中获取plane.centerPose

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

我面临的问题是,在大多数情况下,它仍然给我以前的飞机,而不是给我更新的姿势。

我想要的是通过onUpdate方法获得更新的姿势。

java android augmented-reality arcore sceneform
1个回答
0
投票

获取当前帧。

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

然后您可以提取平面

val plane = frame.getUpdatedTrackables(Plane::class.java)
© www.soinside.com 2019 - 2024. All rights reserved.