我需要在javascript中的特定点剪切现有路径(曲线)。例如,如果我有以下路径:
<path stroke-width="3"
stroke="black"
stroke-linecap="round"
stroke-linejoin="round"
id="line_test"
d="M125,165 C125,165 125,164 125,164">
</path>
从那以后,我可以得到这样的中点:
var line = document.getElementById("line_test");
var length = line.getTotalLength();
var midpoint = line.getPointAtLength(length/2);
一旦我得到那个中点,我想彻底删除剩下的路径。有没有一个函数可以让我得到一个子路径?绘图库对我来说不是一个真正的选择。
答案 0 :(得分:6)
是的,它被称为getPathSegAtLength(在路径元素上可用)并且它返回pathSegList的索引,该索引可以用于切片那里的pathSegList。
pathSegList是一个类似于数组的列表,如果您使用一些最新的浏览器,您可以使用常规数组表示法来逐步浏览列表,但它更兼容使用SVG 1.1中定义的接口现在。