我试图理解wikitude的例子。当我在手机上运行示例应用程序并尝试其中一个POI示例时,它会将poi加载到摄像机视图中。但是,他们总是保持相对于我。当我四处走动时,我永远无法走过一条,似乎总是说距离我5米。如何更新wikitide示例,以便显示一个绝对的地理定位,您可以四处走动并探索?这看起来很简单,但在线的例子似乎都没有回答这个问题。我已经广泛搜索了wikitude示例文档。
以下是架构师视图中poiatlocation.js文件底部的摘录 -
我应该在架构师世界或java代码中查看js文件吗?
locationChanged: function locationChangedFn(lat, lon, alt, acc) {
// request data if not already present
if (!World.initiallyLoadedData) {
var poiData = {
"id": 1,
"longitude": (lon + (Math.random() / 5 - 0.1)),
"latitude": (lat + (Math.random() / 5 - 0.1)),
"altitude": 100.0
};
World.loadPoisFromJsonData(poiData);
World.initiallyLoadedData = true;
}
},
};
/ * forward locationChanges to custom function * / AR.context.onLocationChanged = World.locationChanged;
答案 0 :(得分:1)
提供的示例实现在第一次位置更新时在用户附近创建虚拟poi数据。 POI可能距离用户几公里,您可以使用“lon + 0.001”和“lat + 0.001”来创建更接近的POI。 另请注意,GPS和网络定位通常不是很准确,示例应用程序在Android上使用非常基本的“位置策略”和iOS上的默认位置策略 - 所以不要指望内部移动会导致POI位置更改。
在户外使用POI进行尝试后,您会发现位置更改效果。
亲切的问候
PS .: 如果您想使用更准确的位置策略,请查看 http://developer.android.com/guide/topics/location/strategies.html 并覆盖ARchitectView的setLocation实现。 注意:本机环境中的每个architectView.setLocation()也会导致“AR.context.onLocationChanged”-JS函数调用。