На самом деле есть лучший способ сделать это, используя path.attr('path')
. path
- это массив массивов частей пути, например,
[
['M', 100, 100],
['L', 150, 150],
['L', 200, 150],
['Z']
]
Если вы обновите его, вам не нужно каждый раз рисовать путь с нуля.
Raphael.el.addPart = function (point) {
var pathParts = this.attr('path') || [];
pathParts.push(point);
this.attr('path', pathParts);
};
var path = paper.path();
path.addPart(['M', 100, 100]); //moveto 100, 100
path.addPart(['L', 150, 150]); //lineto 150, 150
path.addPart(['L', 200, 150]); //lineto 200, 150
path.addPart(['Z']); //closepath