JS根据A点旋转指定角度后B点的坐标位置

// ptSrc: 圆上某点(初始点);
// ptRotationCenter: 圆心点;
// angle: 旋转角度°  -- [angle * M_PI / 180]:将角度换算为弧度
// 【注意】angle 逆时针为正,顺时针为负
function rotatePoint(ptSrc,ptRotationCenter,angle){
  var a = ptRotationCenter.x
  var b = ptRotationCenter.y
  var x0 = ptSrc.x
  var y0 = ptSrc.y
  var rx = a + (x0-a) * Math.cos(angle * Math.PI / 180) - (y0-b) * Math.sin(angle * Math.PI / 180);
  var ry = b + (x0-a) * Math.sin(angle * Math.PI / 180) + (y0-b) * Math.cos(angle * Math.PI / 180);
  var json = {x:rx,y:ry}
  return json;
}

你可能感兴趣的:(JS根据A点旋转指定角度后B点的坐标位置)