Canvas---clearRect()清除圆形区域

Posted waterfowl

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Canvas---clearRect()清除圆形区域相关的知识,希望对你有一定的参考价值。

function clearArcFun(x,y,r,cxt){    //(x,y)为要清除的圆的圆心,r为半径,cxt为context
   var stepClear=1;//别忘记这一步  
   clearArc(x,y,r);
   function clearArc(x,y,radius){
      var calcWidth=radius-stepClear;  
      var calcHeight=Math.sqrt(radius*radius-calcWidth*calcWidth);  
var posX=x-calcWidth; var posY=y-calcHeight; var widthX=2*calcWidth; var heightY=2*calcHeight; if(stepClear<=radius){ cxt.clearRect(posX,posY,widthX,heightY); stepClear+=1; clearArc(x,y,radius); } } }

利用的方法是将圆形切成很多个平行的矩形,然后从中间到圆的两端进行逐渐递减的操作

代码引用自:

html5 canvas拓展clearRect()实现圆形区域清理

 


以上是关于Canvas---clearRect()清除圆形区域的主要内容,如果未能解决你的问题,请参考以下文章

Html5_canvas_01

LeetCode1560. 圆形赛道上经过次数最多的扇区(C++)

App Engine:每次关闭计算机时都会清除开发数据存储区。如何避免这种情况?

如何重新加载圆形进度条

ARC圆形保留检测

CMSGC-STW-GCRoots-安全点(区)-三色标记