javascript - PaperJS 多维数组

标签 javascript paperjs

我已经使用 paperJS 创建了一个圆圈,现在我将为创建的圆圈应用撤消选项。那么如何将 Point {x: 537, y: 157}(这是 paperjs 中的 event.point)保存到数组中。

最佳答案

如果你想从屏幕上删除这些项目,这并不像从你的数组中删除它们那么简单,因为它们仍然会存储在 children 数组中,当它们处于事件状态时已创建(project.activeLayer 如果您没有更改图层)。

下面的代码创建了三个不同颜色的圆圈,将它们存储在一个数组中,然后将第二个圆圈从数组中拼接出来,最后将其从 View 中移除(jsbin here):

<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>

关于javascript - PaperJS 多维数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16928183/

相关文章:

javascript - jQuery 中的全站导航,但在 Mac 上避免使用 Command-

javascript - 如何使用 javascript/Angular js 发送多个 get 请求以使用多个 url

Javascript 单页网站 |谷歌、OG 和元数据

javascript - 如果在 onFrame 中添加新点,Path.scale 将被忽略

node.js - paper.js 和 Adob​​e Illustrator SVG : layers compatibilty

javascript - paper.js 点数学不起作用

javascript - 如何用约束布局交换两个按钮的位置?

javascript - Javascript 中对象属性是否被提升?

javascript - Paper.js 围绕鼠标拖动轴旋转组

javascript - 为什么这个对象的位置是NaN?