我想知道繪圖應用程序如何在沒有空白的情況下繪製鼠標關閉的整個過程。我的意思是,例如,如果該程序只在鼠標的X,Y座標上繪製圓圈,那麼如果鼠標過於虛擬,看起來就像是一堆小圓圈,而不是一條不錯的連續線。如何在不經常在0.001秒前的鼠標位置和現在的鼠標位置之間繪製一條簡短的直線的情況下完成此任務。 謝謝在繪圖應用程序中不斷繪圖
回答
它不能而不不斷吸取當前鼠標點和前一點,這就是爲什麼這是繪圖程序一般做之間做一個行來完成。
愛好者繪圖程序將適合彎曲線以前的多個點來實現更自然的繪圖筆畫,但原理是相同的。
更新:根據評論,看起來你有一個計時器涉及您的繪圖代碼。這肯定是不必要的,因爲只要移動鼠標,應用程序就會生成一個MouseMove事件,並且可以使用該事件繪製下一行。
行,或某種[曲線](http://en.wikipedia.org/wiki/B%C3%A9zier_curve) – 2010-04-27 20:11:24
「Bezier」=「適合彎曲線條到多個點」。 :) – MusiGenesis 2010-04-27 20:15:22
創建這些數組作爲指令來生成行,然後將它們推入每個操作的隊列,然後彈出它們以進行撤消是一個好主意嗎? – jmasterx 2010-04-27 20:16:45
你可以畫一個短的曲線線之間的鼠標是0.001秒前和鼠標現在。
鼠標位置不連續,如果移動速度比慢得多,則會得到不連續的離散點。您需要使用您的首選方法在這些點之間進行插值。
好吧,所以我使用計時器和繪製短直線的方式是正確的嗎? – jmasterx 2010-04-27 20:10:19
你可以使用貝塞爾曲線http://en.wikipedia.org/wiki/B%C3%A9zier_curve來獲得一些好的效果。 – 2010-04-27 20:13:10
你不需要計時器。您只需要記錄以前的鼠標位置,然後畫一條線到當前的鼠標位置。如果你正在做更有趣的插值(比如立方體),你只需要跟蹤過去的更多點。 – 2010-04-27 20:13:48
- 1. HTML 5畫布繪圖應用程序不繪圖
- 2. Java繪圖應用程序
- 3. Qt繪圖應用程序
- 4. 在繪圖應用程序中撤消
- 5. 繪圖程序
- 6. 在線繪圖應用程序
- 7. 中東繪圖應用程序
- 8. Android中的繪圖應用程序
- 9. 編程簡單繪圖應用程序
- 10. 使用SurfaceView繪圖應用程序
- 11. 在Android應用程序中繪製蠟燭貼圖圖表
- 12. 在iOS應用程序中執行自定義位圖繪圖
- 13. 在Silverlight中創建繪圖/圖表應用程序的指導
- 14. Kivy簡單繪圖應用程序
- 15. 繪圖應用程序 - 曲線擬合
- 16. iPhone開發 - 繪圖應用程序
- 17. iPhone應用程序:繪製圖
- 18. 繪圖應用程序撤消按鈕
- 19. 爲繪畫應用程序優化繪圖c#
- 20. UIView強制實時重繪(繪圖應用程序)
- 21. 在32位和64位應用程序中使用GDi繪圖
- 22. 在Windows應用程序中使用C#繪製條形圖
- 23. 在R中調用繪圖()而不產生繪圖
- 24. 製作繪圖應用程序的截圖+繪製2D形狀輪廓
- 25. 鼠標繪圖程序Java
- 26. 安卓繪圖程序
- 27. 在一個簡單的繪圖應用程序中優化視圖繪圖代碼
- 28. AS3使用位圖數據創建繪圖應用程序
- 29. 在wxWidgets中繪製類似程序的繪圖工具
- 30. 在C#MVC應用程序中繪製PIE圖表
@everyone:OP詢問* brush *工具是如何工作的,而不是* line *工具 – 2010-04-27 20:13:22
@BlueRaja,謝謝,我也誤解了:) – 2010-04-27 20:15:00
@BlueRaja:是什麼讓你覺得他/她/畫筆工具? – MusiGenesis 2010-04-27 20:23:10