我正在開發一款遊戲,我需要使用給定數量的火柴棒動畫片段創建不同的封閉形狀。所以任何人都可以幫助我找出用戶創建的形狀是否封閉?如何找到一個形狀是否閉合形狀?
-3
A
回答
1
製作網格,火柴桿從網格中佔用瓦片。應用簡單的尋路算法(任何都可以,簡單的)從形狀的中心到其外部的點。如果尋路失敗,則表示其封閉形狀。如果達到目標,意味着有一條路徑,意味着它不是封閉的形狀。
0
假設您的筆畫厚度爲1像素。
- 取任意一行上的像素。
- 以其4鄰居(稱他們4N)。
- 在4N的每個像素上使用
BitmapData.flooFill
。 - 然後對於每個人來說,檢查洪水填充是否着色了其他3個。如果確實如此,那麼你的形狀不會封閉。如果至少有一個鄰居在至少一個4
floodFills
中保持暢通,則形狀將關閉。
+0
將試圖讓你知道結果..謝謝你的答案 –
+1
你假設火柴的像素連接,他們都是相同的純色等,如果user2431915正在使用光柵圖形,這種方法不行。 – Discipol
相關問題
- 1. 如何在形狀達到另一個形狀時停止形狀(Android)?
- 2. 如何創建從一個形狀到另一個形狀的變形效果?
- 3. 如何將幾何形狀組合成一組重疊形狀
- 4. 如何找出一個形狀是否可以通過
- 5. 如何檢測二維形狀是否包含R樹形狀的另一個形狀?
- 6. 將形狀擬合到指定區域,找到最合適的形狀
- 7. Slick2d形狀包含另一個形狀
- 8. 如何繪製一個閉合的彎曲形狀?
- 9. 如何檢測一個形狀是否在html5畫布中碰到另一個形狀?
- 10. PowerPoint形狀不在形狀集合
- 11. X(關閉)形狀
- 12. 如何知道矩形是否碰到這種形狀?
- 13. Visio:如何獲取包含在一個形狀中的形狀?
- 14. 是否可以在Dygraphs中繪製閉合的形狀?
- 15. 如何從形狀學習形狀ID
- 16. Kineticjs找出一條線是否與一個矩形形狀碰撞
- 17. 如何找到文本框的形狀
- 18. 如何在圖像上找到形狀
- 19. 畫一個形狀
- 20. 找到形狀的類型
- 21. 如何判斷一個區域是否屬於某個形狀?
- 22. 無法驗證一個形狀是否爲三角形
- 23. 查找圖像中的封閉形狀
- 24. 當形狀部分透明時,如何在Canvas中從另一個形狀(XOR)切出一個形狀?
- 25. WPF複合形狀
- 26. vba形狀集合
- 27. 複合XML形狀
- 28. Excel VBA將一個形狀與另一個形狀比較
- 29. 使用android.graphics.Path從另一個形狀中刪除一個形狀
- 30. 通過svg將兩種形狀合併爲一種形狀
可以請你告訴如何訪問形狀的中心....例如三角形或矩形?請回復.... –
如果你把遊戲變成一個網格,就像我獲得的一樣,只需將它除以2即可得到一個單元格(向下舍入),這個單元格就是中心。如果沒有,計算形狀的x,y,寬度和高度(或者如果火柴棒在精靈中,直接從它得到x,y,寬度和高度)併除以2. – Discipol
感謝好友...將嘗試它出.... –