//平移
console.log('平移开始', app.getBeijingTime().time,rotate);
that.mapCtx.translateMarker({
markerId: carMarkerID,
destination: {
latitude: tcbDbRes.latitude,
longitude: tcbDbRes.longitude,
},
autoRotate: true,
moveWithRotate: false,
rotate,
duration: 30000,
animationEnd: function(animationEnd_e) {
console.log('平移结束', animationEnd_e,app.getBeijingTime().time);
that.showBus();//从云端读取新数据,供下一次平移动画
},
fail: function() {
that.showBus({
ifFirstTime: true,
});
}
})
看似是30秒后animationEnd才执行下一次的获取新数据,其实是不到1秒内就疯狂执行animationEnd函数。
请问,这是bug么?还是我用的不对?
rotate的角度值也不稳定,有时候正常,有时候倒车(差180度),我的计算代码也没调整。
1.构建地图的marker时,属性是id且值为number;且要设置旋转中心点anchor: {x: 0.5, y: 0.5}
2.translateMarker入参中的autoRotate文档中说是必填参数,但实际是不要设置此参数,才能旋转
3.旋转角度<180的顺时方向,否则逆时方向:360-角度,且该角度是目标角度,即再旋转同样角度是没有反应的,认为已经旋转到目标角度了(相对于
marker的原始角度算起)