我需要使用一条线将一条大路径“分割”成两条小路径。例如,您可能有以下配置:
手术后,我应该有两条截然不同的闭合路径。我可能应该找到两个交叉点并使用 Path.split
函数来分割矩形路径,但我不完全理解 paper.js API,我不确定使用 paper 来做到这一点的最佳方法.js API。
例如,我通过执行以下命令拆分原始矩形:
var starting_shape = new paper.Path.Rectangle([paper.view.center.x - 200, paper.view.center.y - 200], 400);
starting_shape.strokeColor = "#aaa";
starting_shape.strokeWidth = 2;
starting_shape.fullySelected = true;
var p1 = starting_shape.split(starting_shape.getNearestLocation([paper.view.center.x - 40, paper.view.center.y - 250]));
var p2 = starting_shape.split(starting_shape.getNearestLocation([paper.view.center.x + 50, paper.view.center.y + 250]));
我得到以下信息:
我尝试执行以下操作:
p1.closed = true;
p2.closed = true;
p1.position.x += 10;
我得到了必要的结果:
但是有没有办法让它更聪明呢?
最佳答案
是的,您可以使用 path.divide(path2)
执行除法 bool 运算。如果您从 github 克隆项目,Examples > Scripts > BooleanOperations.html
我认为目前仅用一条线就无法像您希望的那样工作。封闭路径似乎更稳定。
关于javascript - 使用 paper.js 将路径分成两个单独的路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23258001/