我需要在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);
一旦我得到那个中点,我想完全删除其余的路径.有没有一个函数可以让我得到一个子路径?绘图库对我来说不是一个真正的选择.
解决方法:
是的,它被称为getPathSegAtLength(在路径元素上可用)并且它返回到pathSegList的索引,该索引可以例如用于在那里切片pathSegList.
pathSegList是一个类似于数组的列表,如果你使用一些最新的浏览器,你可以使用普通的数组表示法来逐步浏览列表,但它现在使用SVG 1.1中定义的接口更兼容.