我正在开展一个项目,其中通常有数千个项目用paperjs绘制。这是非常缓慢的,因为paperjs正在重绘每个项目,即使他们没有改变。有没有办法避免这种情况?
我发现this helpful paperjs fork确实解决了这个问题,但是它似乎不再维护了,并且存在一些问题,它没有正确清除项目。
只是想知道我找不到一个'正确'的paperjs解决方案,或者我只需要自己做一个叉子。
创建我正在使用的项目:
new Path.Rectangle(start, values.blockSize);
然后稍后改变它的颜色。
Here's a fiddle所以你可以看到它在高网格尺寸下的速度有多慢
由于
答案 0 :(得分:0)
我认为我的叉子可以帮到你。我应该提供文件。 Here是我解释我改变了什么以及它是如何工作的线程(应该可以将这些更改与最新的paper.js合并)。
还有两个示例:persistance(渐进淡出)和benchmark(点击并按空格键以查看差异)。图纸目录中的代码为here,但我不确定您是否可以看到它。