我正在使用Here SDK和Here API创建一个Android应用。在我的应用程序中,我向PDE(平台数据扩展)发送请求以获取不同层的POI。该请求是使用GeoboundingBox创建的,基于我当前的位置为中心,并且宽度和高度均为20 km。
但是很明显,请求返回了一个响应,其中包含定义的GeoboundingBox之外的POI。
这是如何工作的?我要求错了吗?下面是代码:
Set<String> layers = new HashSet<>(Arrays.asList("POI_SMALLER", "POI_SMALL", "POI_BIG"));
GeoBoundingBox box = new GeoBoundingBox(new GeoCoordinate(loc.getLatitude(), loc.getLongitude()), 20000, 20000);
final PlatformDataRequest req = PlatformDataRequest.createBoundingBoxRequest(layers, box);
req.execute((platformDataResult, error) -> {
//show markers on map
});
我在地图上将POI(按某些类别过滤)标记为蓝点,我的当前位置标记为绿色。 GeoboundingBox的左上角坐标和右下角坐标标记为黄色(用红色包围)。
我希望蓝色标记(找到的POI)在黄色标记(GeoboundingBox的坐标)标记的范围内,但是其中一些不在其内。
答案 0 :(得分:0)
我们有here个演示页,您还可以在其中测试PDE的行为。
我尝试了以下边界框:52.245,8.715、52.065、8.894,但是在所请求的矩形内有所有POI:
您可以调试发送到应用程序中PDE的确切坐标并将其与黄色坐标进行比较吗?