我已经使用 paperJS 创建了一个圆圈,现在我将为创建的圆圈应用一个撤消选项。那么如何将其保存Point {x: 537, y: 157}
(这是 paperjs 中的 event.point)到数组中。
问问题
711 次
1 回答
2
如果您希望将项目从屏幕中删除,它并不像从数组中删除它们那么简单,因为它们仍将存储在children
创建它们时处于活动状态的任何层的数组中(project.activeLayer
如果您没有更改层)。
下面的代码创建了三个不同颜色的圆圈,将它们存储在一个数组中,然后将第二个圆圈从数组中拼接出来,最后将它从视图中移除(此处为 jsbin):
<html>
<head>
<meta charset=utf-8 />
<title>JS Bin</title>
<script type="text/javascript" src="https://raw.github.com/paperjs/paper.js/master/dist/paper.js"></script>
<script type="text/paperscript" canvas="p">
var circleArray = [];
circleArray.push(new Path.Circle({
center: [20, 20],
radius: 10,
strokeColor: 'red'
}));
circleArray.push(new Path.Circle({
center: [30, 30],
radius: 10,
strokeColor: 'green'
}));
circleArray.push(new Path.Circle({
center: [40, 40],
radius: 10,
strokeColor: 'blue'
}));
var idOfItemToRemove = 1;
var numberOfItemsToRemove = 1;
var removeItems = circleArray.splice(idOfItemToRemove, numberOfItemsToRemove);
for (var i = 0; i < removeItems.length; i++) {
removeItems[i].remove();
}
</script>
</head>
<body>
<canvas id="p" resize></canvas>
</body>
</html>
于 2013-08-04T21:27:35.117 回答