如何删除 ARCore 中的所有平面



如何在 ARCore 中删除所有检测到的平面并重新开始检测它们?这可能吗?我在谷歌和Stackoverflow上搜索了arcore删除/删除所有飞机,我没有发现任何有用的东西。

/编辑:我想让 ARCore 在启动时进行版本检查后处于相同状态,显示灰色手部运动动画并且没有检测到飞机(因此必须首先删除它们(,并且 ARCore 正在尝试检测新飞机。

也许如果你给出一些代码,我可以更好地解释你的情况,但你只需要做:

frame.getUpdatedTrackables(Plane.class).clear();

编辑(将之前的答案留给将来的研究(

现在我知道您正在使用 sceneform,您必须重新启动活动。 我们还没有像 .onPause、.onResume、.clear 等这样的调用。

因此,到目前为止,您可以做的是重新启动活动。

Button btn = findViewById(R.id.button);
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
finish();
startActivity(new Intent(HelloSceneformActivity.this, HelloSceneformActivity.class));
}
});

重新启动应用程序 正如克莱顿威尔金森所说的那样,我使用以下代码完成了:

Intent i = new Intent(context, Main.class);
i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK|Intent.FLAG_ACTIVITY_CLEAR_TASK);
context.startActivity(i);

最新更新