更新时间:2022年03月22日
简介
Since 3.1.0 起支持动态轨迹绘制,开发者可以提供轨迹数据,来动态展示轨迹。支持监听轨迹绘制状态。
绘制动态轨迹
示例代码如下:
/// 读取动态轨迹点 String coordinateStrings = await rootBundle.loadString('resoures/trace_path.txt'); /// string -> list List<String> coordinateStringList = coordinateStrings.split(','); /// 动态轨迹点 List<BMFCoordinate> coords = []; for (var i = 0; i < coordinateStringList.length; i += 2) { BMFCoordinate coordinate = BMFCoordinate( double.parse(coordinateStringList[i + 1]), double.parse(coordinateStringList[i])); coords.add(coordinate); } /// 构造动态轨迹动画参数 BMFTraceOverlayAnimateOption traceOverlayAnimateOption = BMFTraceOverlayAnimateOption( animate: true, delay: 0.0, duration: 3, fromValue: 0.0, toValue: 1.0, easingCurve: BMFTraceOverlayAnimationEasingCurve.Linear, trackMove: true); /// 构造动态轨迹 _traceOverlay = BMFTraceOverlay( coordinates: coords, traceOverlayAnimateOption: traceOverlayAnimateOption); await myMapController.addTraceOverlay(_traceOverlay);
显示效果如图:
https://mapopen-website-wiki.bj.bcebos.com/flutter/static/video/shineFlutter.mp4