1

paperJS を使用して円を作成しました。作成した円に元に戻すオプションを適用します。では、どうすればこれを配列に保存できますかPoint {x: 537, y: 157}(これは paperjs の event.point です)。

4

1 に答える 1

2

アイテムを画面から削除したい場合は、配列からアイテムを削除するほど簡単ではありません。これは、アイテムchildrenが作成されたときにアクティブだったレイヤーの配列にまだ格納されているためです (project.activeLayerレイヤーを変更していない場合)。

次のコードは、異なる色の 3 つの円を作成し、それらを配列に格納してから、配列から 2 番目の円を継ぎ合わせ、最後にビューから削除します (ここでは 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 に答える