2

私はこのようなbutton1を持っています。

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

今、私はそれをコピーしたい(それを複製する)。どうすればいいですか?

私はこれを試しました-

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

キャンバスに1つのコピーしか描画されていないため、これは機能しませんでした。

これはどのようにすればよいですか?

4

3 に答える 3

5

KineticJS でオブジェクトをコピーする最も簡単な方法は、 clone メソッドを使用することです。

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

 var Button2 = Button1.clone();

Button2 は Button1 の正確なコピーになりました

于 2013-03-21T14:53:11.047 に答える
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);

?

于 2013-03-21T11:57:47.703 に答える
0

Button1 と Button2 が同じキネティック オブジェクトを指すようになりました。

jQuery 拡張メソッドを使用してみることができます

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

これにより、オブジェクトのコピーが作成されます。

于 2013-03-21T12:04:38.657 に答える