0

我正在尝试更改在 raphael 画布上绘制的路径的终点,但无法获得正确的语法。这是代码。(函数调用arrow.attr的参数显然是错误的,但我尝试了很多组合都无济于事):

window.onload = function() {  
 var paper = new Raphael(document.getElementById('canvas_container'), 500, 500);  
 var circle = paper.circle(100, 100, 80);  
 var arrow = paper.path("M 100 100 l -56.5 56.5 z"); 
    arrow.attr({stroke: '#0a0', 'stroke-width': 3});

    arrow.attr({'x2':80, 'y2':0});
}  ;

拉斐尔的参考非常有限,我想知道其他地方是否有更好的参考。

4

1 回答 1

1

修改部分路径的一种方法是将路径详细信息存储在数组中,根据需要修改部分并将路径重新分配为字符串。

var paper = new Raphael(document.getElementById('canvas_container'), 500, 500),
    pathArray = ['M', 100, 100, 'l', 100, 100, 0, 100, 'z'],
    shape = paper.path(pathArray.join(' '));
// Modify the last point (0, 100) to (100, 0)
pathArray.splice(-3, 2, 100, 0);
// Reassign the path as string
shape.attr({path: pathArray.join(' ')})

希望这可以帮助。

于 2013-07-18T14:53:17.367 回答