在HEREMAPS中将标记位置移动到另一个位置



目前,我正在开发一个类似于uber的地图应用程序,因为我使用谷歌的位置服务"断续螺纹;,我每隔10-20-30秒获得用户的位置,并通过简单地清理现有的List,并在其中插入另一个标记,更新其在地图上的新位置。

这使得它看起来像用户图标字面上的"传送";穿过地图。

我做了一些研究,但我找不到例子,也无法在Heremaps explorer版本中完成。

我知道我所要做的就是只处理一个对象,而不是清空列表并在其中放置另一个对象。

任何帮助都将是感激的,提前感谢。

使用HERE SDK的Explore Edition,您可以使用MapCameraflyTo()方法。两个不同坐标之间的动画的速度和类型可以大量定制。

只是给一个简单的例子,你如何在两个坐标之间移动而不需要&;teleporting&;;

private void flyTo(GeoCoordinates geoCoordinates) {
GeoCoordinatesUpdate geoCoordinatesUpdate = new GeoCoordinatesUpdate(geoCoordinates);
double bowFactor = 1;
MapCameraAnimation animation =
MapCameraAnimationFactory.flyTo(geoCoordinatesUpdate, bowFactor, Duration.ofSeconds(3));
mapCamera.startAnimation(animation);
}

每当你设置一个新的坐标作为目标到相机,它会立即切换到那个位置-因此它看起来像传送。使用线性(或像上面那样的弓形)动画,它看起来会更平滑,实际上前一个位置和新位置之间的坐标是"插值"的。

导航版,也有一个InterpolationListener,它可以用来提供平滑的插值位置更新时,定位源被使用。

最新更新