0

首先,对不起我的英语。我正在按照 Raghav Sood 书中的步骤编写适用于 Android 的增强现实浏览器。它的标题是 Pro Android Augmented Reality。问题是,当我在我的设备中启动第 9 章的示例(名为 Pro Android AR 9 并位于https://github.com/RaghavSood/ProAndroidAugmentedReality)时,它是否正常工作取决于设备的类型。

在我的带有 Android 4.0.4 的 Sony Ericsson Xperia Arc 中,Raghav 实现的浏览器运行良好。当我在 Asus Eee Pad Transformer 或 Samsung Galaxy Tab 中测试增强现实浏览器时,它们都使用 Android 4.0.3,传感器的读数似乎是错误的。将平板电脑以横向模式放在我面前,如果我专注于一个点(维基百科、推特或本地标记)并将自己向右翻转,这些点就会下降。如果我向左转,斑点会上升。如果我想让这些点向左移动,我必须倾斜设备,使它们的屏幕看起来朝向地面。以同样的顺序,如果我转动使屏幕向上看的设备,这些点将向右移动。

似乎该程序混淆了传感器读数。有谁知道怎么解决这个问题???提前致谢。

4

1 回答 1

0

我做到了。我不知道这是否是一个好的解决方案,但似乎在平板电脑上运行良好。

将轴更改为:

SensorManager.remapCoordinateSystem(temp, SensorManager.AXIS_X, SensorManager.AXIS_Y, rotation) 

在 SensorActivity 中似乎修复了轴故障。另一个问题是与每个 POI 相关联的文本出现在使用横向模式的平板电脑中。为了避免这种情况,我在 PaintablePosition 类的 set 方法中使用了条件旋转修改:

if(drawObj.toString().toLowerCase().contains("paintableboxedtext")) rotation=rotation+270;
于 2013-02-28T17:53:09.980 回答