5
即时尝试制作一条从左至右穿过画布的线条。 IM尚处于早期阶段,实现这一目标,使用下面的函数来完成一步一步的动画做IM画布:动画贝塞尔曲线绘制
timer = window.setInterval(draw_line, 30);
我的绘图功能是这样
function draw_line()
{
context.fillStyle = "#000";
context.fillRect(0, 0, canv.width, canv.height);
context.beginPath();
context.lineWidth = 2;
context.strokeStyle = '#fff';
//Where p1, p2, cp1, cp2 are point objects that has x & y values already defined
context.moveTo(p1.x, p1.y);
context.bezierCurveTo(cp1.x,cp1.y,cp2.x,cp2.y,p2.x,p2.y);
context.stroke();
context.closePath();
// now i have to move p1, p2 ,cp1,cp2
// now here is my problem
}
我明白我需要移动p1.x+= a random number;
并且对于cp1和cp2也是一样的,但是关于p2终点它应该按照相同的轨道行!我怎么能做到这一点?
谢谢
谢谢您的回答,但什么即时试图实现的是有尾巴的点。第一个点p1随机移动,第二个点p2跟随p1尾 – trrrrrrm 2012-08-03 15:46:00
有趣的是,我从来没有从你对这个问题的描述中得到这些......不幸的是,我仍然感到困惑。你有什么想要达到的视觉例子吗? – 2012-08-03 15:50:50
@ra_htial你是否正在寻找更像这样的东西? http://jsfiddle.net/mobidevelop/bGgHQ/(在画布上移动鼠标) – 2012-08-03 16:53:58