1、盘算角度前起首要把经纬度坐标转换成舆图容器坐标
// 盘算两点间的角度
function calcAngle(start, end) {
var p_start = map.lngLatToContainer(start),
p_end = map.lngLatToContainer(end);
var diff_x = p_end.x - p_start.x,
diff_y = p_end.y - p_start.y;
return 360*Math.atan2(diff_y, diff_x)/(2*Math.PI)+90;
}
挪用
calcAngle([88.926756, 42.37309], [119.687036, 29.6309]);
要领是牢固的,能够延伸到其他舆图上用。。。
2、依据百分比盘算当前坐标
var lastCoord = [2, 10],
dstCoord = [10, 30],
percent = 0.5,
curCoord;
if(percent == 0.5) {
curCoord = [(10+2)/2, (30+10)/2];
} else {
curCoord = [(10-2)*percent+2, (30-10)*percent+10];
}