收藏
回答

如何连续平移marker

问题模块 框架类型 问题类型 API/组件名称 终端类型 操作系统 微信版本 基础库版本
API和组件 小程序 需求 translateMarker 客户端 6.6.6 2.0.0
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。

- 希望提供的能力


最后一次编辑于  2018-05-23  (未经腾讯允许,不得转载)
邀请回答
复制链接收藏投诉关注问题回答

1 个回答

  • 谢振坤
    谢振坤
    04-15
    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) 即可



    04-15
    赞同
    回复