高德地图开发Android 地图SDK开发指南在地图上绘制—点平滑移动

高德地图开发Android 地图SDK开发指南在地图上绘制—点平滑移动

点平滑移动 最后更新时间: 2021年01月22日

简介

功能说明:根据输入的关键点和时间参数,实现点的平滑移动效果。

使用场景:可应用到展示车辆行驶轨迹、用户移动轨迹等场景。

版本要求:3D地图V4.1.3及以上。

效果示例:

如何实现点平滑移动

相关接口

示例代码

Java


// 获取轨迹坐标点
List<LatLng> points = readLatLngs();
LatLngBounds bounds = new LatLngBounds(points.get(0), points.get(points.size() - 2));
mAMap.animateCamera(CameraUpdateFactory.newLatLngBounds(bounds, 50));

SmoothMoveMarker smoothMarker = new SmoothMoveMarker(mAMap);
// 设置滑动的图标
smoothMarker.setDescriptor(BitmapDescriptorFactory.fromResource(R.drawable.icon_car));

LatLng drivePoint = points.get(0);
Pair<Integer, LatLng> pair = SpatialRelationUtil.calShortestDistancePoint(points, drivePoint);
points.set(pair.first, drivePoint);
List<LatLng> subList = points.subList(pair.first, points.size());

// 设置滑动的轨迹左边点
smoothMarker.setPoints(subList);
// 设置滑动的总时间
smoothMarker.setTotalDuration(40);
// 开始滑动
smoothMarker.startSmoothMove();