canvas绘制弧线

2017-03-21  本文已影响0人  岩蔷薇

1 绘制圆形(arc)

ctx.arc(x,y,r,sAngle,eAngle,counterclockwise);
x,y圆心坐标,r半径;
sAngle,eAngle:起始,结束角度。
counterclockwise:是否是逆时针。true为逆时针,false为顺时针(默认)

2 非零正交原则

ctx.fill();

注意:交叉路径的填充问题,“非零环绕原则”,顺逆时针穿插次数决定是否填充。

1.如果线段是与路径的顺时针部分相交,则计数器加1,
2.如果线段是与路径的逆时针部分相交,则计数器减1,
3.若计数器最终结果不是0,在调用fill()方法时,浏览器就会对其进行填充;若为0,就不对其填充。

<script>
var canvas = document.getElementById("canvas");
var ctx = canvas.getContext('2d');

ctx.arc(250,250,200,0,2*Math.PI,true);
ctx.arc(250,250,100,0,2*Math.PI,false);
ctx.fillStyle = "pink";
ctx.fill();
</script>
上一篇 下一篇

猜你喜欢

热点阅读