创建与PaperScope分离的paperjs对象

创建与PaperScope分离的paperjs对象,paperjs,Paperjs,我希望可以创建,比如说,一个未附加到作用域的Paper.Path对象。我之所以需要这样做,是因为我有几个解析器类的工作是从gerber文件生成几何体,它们不应该对PaperScope的画布有任何影响。关注点的简单分离 例如:(此代码不起作用) 从“paperjs”导入纸张,{Path,Point}; 设路径=新路径([新点(100100),新点(200,-50)]); paper.addPath(路径) 可以设置Paper.js,使其在默认情况下不会在场景中插入新创建的文件。初始化应用程序时,必

我希望可以创建,比如说,一个未附加到作用域的
Paper.Path
对象。我之所以需要这样做,是因为我有几个解析器类的工作是从gerber文件生成几何体,它们不应该对
PaperScope
画布有任何影响。关注点的简单分离

例如:(此代码不起作用)

从“paperjs”导入纸张,{Path,Point};
设路径=新路径([新点(100100),新点(200,-50)]);

paper.addPath(路径) 可以设置Paper.js,使其在默认情况下不会在场景中插入新创建的文件。初始化应用程序时,必须设置
paper.settings.insertItems=false
(请参阅)

如果希望某些项目成为场景的一部分,而其他项目不是,则可以通过将
insert:true/false
参数传递给构造函数,更好地控制是否插入这些项目。
下面是一个示意图,演示了这种行为

//将其切换为true以查看差异。
const INSERT=false;
const circle=新路径。circle({
中心:view.center,
半径:50,
fillColor:'橙色',
插入:插入
})

您可以设置Paper.js,使其在默认情况下不会在场景中插入新创建的文件。初始化应用程序时,必须设置
paper.settings.insertItems=false
(请参阅)

如果希望某些项目成为场景的一部分,而其他项目不是,则可以通过将
insert:true/false
参数传递给构造函数,更好地控制是否插入这些项目。
下面是一个示意图,演示了这种行为

//将其切换为true以查看差异。
const INSERT=false;
const circle=新路径。circle({
中心:view.center,
半径:50,
fillColor:'橙色',
插入:插入
})

如果在创建路径后删除路径(
path.remove()
),则不会在任何画布上绘制该路径(但您仍可以根据需要使用它)。这对您有用吗?如果您在创建路径之后删除它(
path.remove()
),它将不会在任何画布上绘制(但您仍然可以根据需要使用它)。这对你有用吗?另外,
import{Path}是否从“paper”导入类型或函数?因为
Path.clone()as Path
返回一个错误:
TS2749:“Path”指的是一个值,但在这里被用作一个类型。
为了以后将该项添加到场景中,您只需将其添加为场景中另一项的子项(例如
paper.project.activeLayer.addChild(item)
)。关于从“paper;”导入{Path},我建议使用
import*作为“纸张”中的纸张import{Path}是否从“Paper”导入类型或函数?因为
Path.clone()as Path
返回一个错误:
TS2749:“Path”指的是一个值,但在这里被用作一个类型。
为了以后将该项添加到场景中,您只需将其添加为场景中另一项的子项(例如
paper.project.activeLayer.addChild(item)
)。关于从“paper;”导入{Path},我建议使用
import*作为“纸张”中的纸张import paper, {Path, Point} from 'paperjs';

let path = new Path([new Point(100, 100), new Point(200, -50)]);

paper.addPath(path); <- this doesn't exist but you get the point.