2013-03-15 63 views
0

我無法弄清楚我想要做什麼是可能的,如果是的話可以怎麼做。我有一堆形狀分成3組。在這3個組中,其中1個包含通過動畫更新位置的對象。我也試圖讓所有的組/對象都是可拖動的(它們相對於彼此的位置需要保持不變,所以現在我只是將它們所在的層設置爲可拖動的)。KineticJS,動畫圖層中的特定對象/節點

問題是動畫必須重新繪製包含所有對象的整個圖層。似乎沒有必要重繪一堆不移動的形狀,所以我只想在一個組內對物體進行動畫處理。但我不知道如何。

我正在使用該結構的一般實例:

  Stage 
       | 
      Layer 
       | 
    +----------+----------+ 
    |   |   | 
Group 1 Group 2 Group 3 

組1需要進行動畫處理。所有三個組都需要可拖動。我已經嘗試在圖層中放置組1,然後將該圖層添加到父圖層,但這似乎不起作用。

非常粗略的例子:http://jsfiddle.net/UTcaL/

+0

我可以在jsfiddle中看到ur代碼嗎? – allenhwkim 2013-03-15 23:29:56

+0

我在原帖中添加了一個示例。這與我實際使用的基本相比是非常基本的,但基本上我的代碼只是像jsfiddle一樣擁有更多的靜態和移動對象設置。 – Kurt 2013-03-15 23:53:22

回答

0

你需要這樣做,而不是:

 Stage 
      | 
    +------+------+ 
    |  |  | 
Layer Layer Layer 
    | 
shapes 

一個約KineticJS偉大的事情是隻要你想創建許多層的能力,以及集團的事情一起在不同的層次上,根據他們被重繪的頻率

+0

我遇到的問題是我想要做3件事:1)縮放(使用.setScale),2)拖動,3)動畫。動畫需要一個圖層。有很多對象不會被動畫,所以它們可能位於它們自己的單獨圖層中,我可以用onDragEnd更新該圖層的位置(這裏有一個例子就是這裏的)。但這樣做,我不知道如何仍然縮放/縮放所有圖層。如果有幫助的話,那些具有我正在嘗試更改的實際代碼的網站是:http://kurt1288.bitbucket.org/。也許我正在解決這個問題? – Kurt 2013-03-21 18:23:47