我正在绘制一条逐渐增加并变成圆形的弧线。动画完成后(弧线变成圆形),我想绘制另一个半径增加的圆形,前一个圆形持续存在,第二个动画继续。
画完圆圈后,它会被洗掉,这是我不想要的,然后继续第二个动画。完成后会出现一些不必要的动画。
我应该怎么办?
我的代码:
setInterval(function(){
context.save();
context.clearRect(0,0,500,400);
context.beginPath();
increase_end_angle=increase_end_angle+11/500;
dynamic_end_angle=end_angle+increase_end_angle;
context.arc(x,y,radius,start_angle,dynamic_end_angle,false);
context.lineWidth=6;
context.lineCap = "round";
context.stroke();
context.restore();
if(dynamic_end_angle>3.5*Math.PI){ //condition for if circle completion
draw(radius+10);//draw from same origin and increasd radius
}
},66);
window.onload=draw(30);
更新:我什么时候应该清除间隔以节省一些 cpu 周期,为什么动画在第三圈变慢?