2
我有一個形狀(四分之一圓),我一直在使用的HTML畫布功能創建:如何基於創建的畫布形狀創建粒子表面發射器? HTMLS帆布JS
moveTo
LineTo
QuadraticCurveTo
我怎麼去關於將形狀爆炸成粒子,然後將它們返回形成一個圓圈?
我有一個形狀(四分之一圓),我一直在使用的HTML畫布功能創建:如何基於創建的畫布形狀創建粒子表面發射器? HTMLS帆布JS
moveTo
LineTo
QuadraticCurveTo
我怎麼去關於將形狀爆炸成粒子,然後將它們返回形成一個圓圈?
我不會爲您編寫代碼,因爲這需要一些時間,我相信您可以在網上找到示例,但我會告訴您需要了解的理論以便做這樣的事情。
document.createElement('canvas')
)。這個畫布必須至少和你的物體一樣大。我會假設它和你的對象一樣大。我們將這稱爲tempCanvas
,它有tempCtx
所以,我們要做的爆炸:
ctx.drawImage(tempCanvas, x, y)
所以用戶看到的東西[20][30]
的數組來對應。[x][y]
和使用ctx.drawImage(tempCanvas, x, y, 1, 1, newX, newY, 1, 1)
其中x和y是相同像素的[x][y]
和下一頁末和newY使用矢量和尋找下一個點會沿着它的線什麼的計算。結果將是圖像的每個像素被繪製在離原始點擊點稍遠的位置。如果您繼續在框架之後執行此框架,它看起來好像物體已經爆炸。
無論如何,這是總體思路。讓我知道如果有任何不清楚。
注意1:很可能您的普通畫布不會與爆炸對象的大小相同。也許物體放置在100,100,所以你真的點擊了110,115而不是10,15。爲了簡單起見,我省略了該偏移量。