1
我使用KinectJS創建自己的小繪圖程序。一切都很好 - 直到他必須從我的舞臺/圖層中刪除我的形狀。KinectJS - 無法刪除我的形狀
我用:
layer.removeChildren();
從而消除了一切。這對於我的小項目來說有點小事:-( 我在一個圖層上繪製了多個圖形,我只需要定位一個圖形並將其移除即可)
這就是我如何「嘗試」目標形狀,重繪之前:
function drawElement(figureId) {
figureId = Number(figureId);
var figureOld = layer.get("#figure" + figureId)[0];
layer.remove(figureOld);
//I Get the shape!
console.log(figureOld);
var fillColor = "blue";
var strokeColor = "red";
var targetedFigure = figuresArray[figureId];
var userElement = new Kinetic.Shape({
drawFunc: function (canvas) {
var context = canvas.getContext();
context.beginPath()
$.each(targetedFigure.coords, function (i, item) {
context.lineTo(item.x, item.y);
});
context.closePath();
canvas.fillStroke(this);
},
fill: fillColor,
stroke: strokeColor,
strokeWidth: 1,
id: "figure" + figureId,
});
layer.add(userElement);
stage.add(layer);
}
謝謝您的時間:-)
更新,改變了:
layer.remove(figureOld);
要
if (figureOld) {
figureOld.remove();
}
- 謝謝MARK! :)