2011-06-19 81 views
2

我創建了一個粗略的雲生成器here。 雲的每條弧都是從第一個和最後一個固定的隨機生成的。raphael.js動畫問題:只動畫一個路徑的某些點

我想讓雲的形狀慢慢變化,所以我創建了一個動畫,每次調用一個新生成的路徑。

問題是,在舊的和新的路徑之間的插值過程中,有時最後一個點也會移動,而它不應該。

我該怎麼做才能確保第一個和最後一個點不移動?

回答

0

哇,你的雲動畫看起來非常好。我不太確定拉斐爾動畫函數是如何工作的,但我懷疑拉斐爾如何在具有不同座標數的兩條路徑之間移動的問題。

您可以通過移動最終的z(關閉形狀)並在這些點之間手動繪製一條線(確保此線不是動畫的一部分)來解決問題。另一種可能性是確保在路徑中有相同數量的座標。

+0

謝謝!問題可能在於,如果我在兩條路徑中斷裂,則形狀的填充將會破裂!如果這不是問題,你可以發表一個例子嗎? (PS:隨意使用雲!) – Bakaburg

+1

這是一個黑客,並且角落不太正確,但我認爲它工作正常:http://dl.dropbox.com/u/169269/cloud .html –

+0

非常感謝,它的工作原理!所以它定義了一個包含閉角或者拉斐爾錯誤的SVG動畫的bug! – Bakaburg