Javascript 在画布中旋转箭头
我想把箭头旋转到任何给定的角度。我需要添加/修改的内容,以便它可以旋转到任何角度。目前它的温度是180度Javascript 在画布中旋转箭头,javascript,html,canvas,Javascript,Html,Canvas,我想把箭头旋转到任何给定的角度。我需要添加/修改的内容,以便它可以旋转到任何角度。目前它的温度是180度 function drawArrowAtAngle(cx,cy,angle,context){ context.save(); context.beginPath(); context.lineWidth = 1; context.strokeStyle = '#aaa'; context.moveTo(cx+25,cx-2); context.lineTo(cx-5
function drawArrowAtAngle(cx,cy,angle,context){
context.save();
context.beginPath();
context.lineWidth = 1;
context.strokeStyle = '#aaa';
context.moveTo(cx+25,cx-2);
context.lineTo(cx-55,cx-2);
context.lineTo(cx-58,cx);
context.lineTo(cx-55,cx+2);
context.lineTo(cx+25,cx+2);
context.lineTo(cx+25,cx-2);
context.stroke();
context.closePath();
context.restore();
}
假设希望旋转中心为
(cx,cx)
,请在上下文.save()后插入以下三行代码>语句
context.translate(cx,cx) ;
context.rotate(angle) ;
context.translate(-cx,-cx) ;
这将使箭头顺时针旋转角度
(弧度)
在代码中使用(cx,cx)
来锚定箭头。如果您的意思是(cx,cy)
,则相应地调整上述代码段。假设您希望旋转中心为(cx,cx)
,请在上下文.save()后插入以下三行代码>语句
context.translate(cx,cx) ;
context.rotate(angle) ;
context.translate(-cx,-cx) ;
这将使箭头顺时针旋转角度
(弧度)
在代码中使用(cx,cx)
来锚定箭头。如果你的意思是(cx,cy)
,那么相应地调整上面的代码段