【JS】求旋转旋转坐标

已知圆心坐标、旋转角度、起始点坐标,求结束点坐标

start = {x:1, y:0}
end   = {}
deg   = 45;
end.x = start.x * Math.cos(deg*Math.PI/180) - start.y*Math.sin(deg*Math.PI/180)
end.y = start.x * Math.sin(deg*Math.PI/180) + start.y*Math.cos(deg*Math.PI/180)
console.log(end)
// 得到: {x: 0.7071067811865476, y: 0.7071067811865475}

上面的反向,已知结束点坐标,求起始点

let start = {}
let end   = {}
let deg   = 45
start.x =  end.x * Math.cos(deg*Math.PI/180) + end.y * Math.sin(deg*Math.PI/180)
start.y = -end.x * Math.sin(deg*Math.PI/180) + end.y * Math.cos(deg.Math.PI/180)

你可能感兴趣的:(【JS】求旋转旋转坐标)