如何在KineticJS中复制和粘贴形状

时间:2013-03-21 11:49:38

标签: javascript canvas kineticjs

我有一个像这样的按钮。

var Button1 = new Kinetic.Polygon({
            points: [0, 0, 0, 30, 15, 15],
            fill: 'rgb(0, 255, 0)'
        });

现在我要复制它(复制它)。我该怎么做?

我试过了 -

    var Button2 = new Kinetic.Polygon();
    Button2 = Button1;

这不起作用,因为画布上只绘制了一个副本。

我该怎么做?

3 个答案:

答案 0 :(得分:5)

在KineticJS中复制对象的最简单方法是使用克隆方法:

 var Button1 = new Kinetic.Polygon({
        points: [0, 0, 0, 30, 15, 15],
        fill: 'rgb(0, 255, 0)'
 });

 var Button2 = Button1.clone();

Button2现在是Button1的精确副本

答案 1 :(得分:0)

这个怎么样:

var buttonData = {
            points: [0, 0, 0, 30, 15, 15],
            fill: 'rgb(0, 255, 0)'
        }

var Button1 = new Kinect.Polygon(buttonData);
var Button2 = new Kinect.Polygon(buttonData);

答案 2 :(得分:0)

Button1和Button2现在指向相同的Kinetic对象。

您可以尝试使用jQuery扩展方法

var Button2 = $.extend({}, Button1);

这将制作该对象的副本。