如何连续平移marker
for ( var i = 0; i < posArr.length; i++) { that .mapCtx.translateMarker({ markerId: 3, autoRotate: true , duration: time, destination: { latitude: posArr[i][1], longitude: posArr[i][0], }, animationEnd() { } }) } |
- 需求的场景描述(希望解决的问题)
初始化的marker方向是向上的,然后连续平移这个marker。
- 希望提供的能力
1 回复
loopAnamation: function (subArray, index, markerId) { var that = this // 如果执行完成 或者 收到新数据 停止动画 if (index >= subArray.length) { return } console.log( '开始移动第' , index, '个点' , subArray[index], 'markId:' , markerId, that.mapCtx) that.mapCtx.translateMarker({ markerId: markerId, autoRotate: false , duration: 5000 / (subArray.length - 1), destination: { latitude: subArray[index].latitude, longitude: subArray[index].longitude, }, animationEnd() { console.log( 'animation end' ) that.loopAnamation(subArray, index + 1, markerId) }, fail: function (e) { console.log( '移动出错了' , e) } })
在需要的位置调用 this.loopAnamation(subArray, index,markerId) 即可 |