canvas 绘制圆弧路径。其圆心在(x, y)位置,半径为r,顺时针画,指定方向从 startAngle 开始【x 轴方向开始计算】,到 endAngle 结束。弧度制。7o0【易塔云】自习室
语法:
context.arc(x, y, radius, startAngle, endAngle, anticlockwise?)
7o0【易塔云】自习室他的参数我解释一下,即7o0【易塔云】自习室
arc(圆心x,圆心y,半径,开始的角度,结束的角度,是否逆时针)7o0【易塔云】自习室
如果我们用arc画一个完整的圆,该怎么搞?大家注意到参数中有个开始角度与结束角度,如果我们开始角度是0,结束角度是360,不就是个正圆了?7o0【易塔云】自习室
正解!但要注意的是,这里的角度是用“弧度”来表示的(Flash也是如此),一个完整的圆即360度,就是2PI弧度。
<script type="text/javascript">
const canvas = document.getElementById("canvas");
const ctx = canvas.getContext("2d");
ctx.save();
ctx.beginPath();
ctx.arc(100, 100, 50, 0, Math.PI / 2);// anticlockwise 是否为逆时针 。默认false,顺时针
ctx.strokeStyle = "blue";
ctx.lineWidth = 5;
ctx.lineCap = "round";
ctx.stroke();
ctx.restore();
ctx.beginPath();
ctx.arc(250, 100, 50, 0, Math.PI / 2, true);// anticlockwise 是否为逆时针 。默认false,顺时针
ctx.fillStyle = "red";
ctx.fill();
</script>
7o0【易塔云】自习室7o0【易塔云】自习室可以看到,当选择true逆时针绘制时,其角度等于 ( 360 - 顺时针 )