首先:这里有两个非常相似的主题,但其中一个以设备故障结束,另一个在C API上结束......这就是为什么要打开一个新问题。
我正在使用 Google Tango SDK和jMonkeyEngine 来制作科学的增强现实应用程序。到目前为止一切都很好。但现在我想使用Tango中的Point Cloud Data,它被提供给一个Listener(Class: OnTangoUpdateListener )。 (Tango Depth Perception)有4种方法:
其中3人被定期召集。问题是: onXyzIjAvailable 从未被调用,因此我无法访问点云数据。这是我的代码片段,你知道我做错了什么或我能尝试什么?
public class TangoUpdateListener implements OnTangoUpdateListener {
@Override
public void onXyzIjAvailable(TangoXyzIjData xyzIj)
{
System.out.println("POINT CLOUD AVAILABLE");
Log.e("CLOUD", "CLOUD AVAILABLE");
}
}
可以在此处找到整个文件:Pastebin
感谢您的帮助!
PS:该设备与示例项目完美配合。这不是硬件问题。
答案 0 :(得分:1)
我发现了什么抑制了Callback。实际上,一次只能使用一个活动相机。当我开发增强现实应用程序时,我有两个活动。一个用于背景 - 显示摄像机视频 - 一个用于渲染虚拟对象 - 使用摄像机获取深度信息。虽然RGB相机和深度相机不是同一设备,但Android认为它们是,并且一次只能访问其中一个。因此,停用背景视频可启用深度数据回调,反之亦然。
如果有人知道如何同时使用它们 - 这将是非常棒的。
干杯, 宝石