Javascript 通过函数(动画)重置每次重新迭代的画布笔划。怎样?
此时,这些线会永久地粘在一起,从而创建一个图形。我希望该行是drawm,每次通过setInterval()调用该函数时都重置,从而创建类似脑波涟漪的动画 以下是我当前的源代码:Javascript 通过函数(动画)重置每次重新迭代的画布笔划。怎样?,javascript,canvas,Javascript,Canvas,此时,这些线会永久地粘在一起,从而创建一个图形。我希望该行是drawm,每次通过setInterval()调用该函数时都重置,从而创建类似脑波涟漪的动画 以下是我当前的源代码: var rippleEffect = function(){ var co = []; for(var i=0; i<=5; i++){ var r = Math.floor(Math.random()*250); co.push(r); //each time through the loop thr
var rippleEffect = function(){
var co = [];
for(var i=0; i<=5; i++){
var r = Math.floor(Math.random()*250);
co.push(r);
//each time through the loop throws/pushes 6 random numbers to array 'co' for bezier curve.
}
var canvas = document.getElementById('brainWave');
var context = canvas.getContext('2d');
context.beginPath();
context.moveTo(500, 75);
context.bezierCurveTo(co[0], co[1], co[2], co[3], co[4], co[5]);
context.lineWidth = 2;
// line color
context.strokeStyle = '#444';
context.stroke(); //exicute the stroke based on the structions we've provided.
};
setInterval(ripple,100); //this re-calls the functions every few miller-seconds.
var-rippleEffect=function(){
var co=[];
对于(var i=0;i我不太确定您试图做什么,但以下是对您的代码的一些观察:
- 如果不希望图形彼此重叠,则clearRect是必不可少的
- setInterval正在调用“ripple”,但它应该调用“rippleEffect”
- var canvas和var context应该在rippleEffect之前拉到外部(它们只需要创建一次,而不是每次循环都创建一次)
- 贝塞尔曲线的完全随机控制点产生的是意大利面,而不是脑波
祝您的项目好运:)那么,您的代码中是否存在大量错误?很抱歉,当我键入源代码时,我调整了ripple名称,以便更具解释性,请回答。我将看看我可以如何处理您的信息,并将向您报告!好的,在又一天的试验和调整代码后,我找到了它。我需要创建一个单独的函数,用于这与主功能不一致,主功能每隔几毫秒清除一次线条。这将创建所需的内联线条之字形动画。