我想知道是否有人可以阐明在 Canvas 和 KineticJS 中管理图层的方式。我很难理解为什么当我 clear(); 一个图层,然后使用 draw(); 再次在该层上运行,它会返回我最初添加到该层的形状等。
例如:
我假设清除一个图层会完全删除它,为了重绘它,我必须设置新的形状并构建一个新图层。
如果有人也可以解释这一点,我将非常感激。
干杯,凯厄斯
我想知道是否有人可以阐明在 Canvas 和 KineticJS 中管理图层的方式。我很难理解为什么当我 clear(); 一个图层,然后使用 draw(); 再次在该层上运行,它会返回我最初添加到该层的形状等。
例如:
我假设清除一个图层会完全删除它,为了重绘它,我必须设置新的形状并构建一个新图层。
如果有人也可以解释这一点,我将非常感激。
干杯,凯厄斯
老实说,这个文档并不被认为是超级冗长的,但正如你在这里看到的:http: //jsfiddle.net/vPGbz/2/ clear
只会从舞台对象中删除图层的绘制表示。您正在寻找的remove
是用于从图层中删除某些元素的方法。
像:
circleLayer.remove(circle);
现在,您可以这样做,layer.children = [];
但我不知道这是否会产生任何不应该的副作用!
编辑:不要这样做。相反,请执行以下操作:layer.removeChildren()
在http://kineticjs.com/api-docs.php下找到Container
。
我正在使用动力学 4.3.1。我正在制作两层,所以我可以使用复选框添加和删除其中一层,
您可以查看此链接:http: //jsfiddle.net/lauraliparulo/uw25p/
像这样的东西:
checkBoxItem.addEventListener('click', function() {
if (this.checked) {
load();
stage.add(layer2);
}
else if (!this.checked) {
layer2.clear();
}
});
:-)