我想知道绘图应用程序如何在没有空白的情况下绘制鼠标关闭的整个过程。我的意思是,例如,如果该程序只在鼠标的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. Java绘图应用程序
- 2. Qt绘图应用程序
- 3. Java Swing绘图应用程序不绘图
- 4. HTML 5画布绘图应用程序不绘图
- 5. 在绘图应用程序中撤消
- 6. iPhone绘图应用程序(不是OpenGL)
- 7. 绘图应用程序 - 绘制虚空不起作用
- 8. 绘图程序
- 9. 中东绘图应用程序
- 10. Android中的绘图应用程序
- 11. 在线绘图应用程序
- 12. 制作HTML绘图应用程序可节省您的绘图
- 13. 画布绘画应用程序不是绘图(Javascript)
- 14. 编程简单绘图应用程序
- 15. 绘图应用程序如何在android手机内存中保存绘图
- 16. 不断更新GUI绘图
- 17. 使用OpenGL/Openframeworks绘图应用程序
- 18. 绘图应用程序MAINMENU采用Delphi
- 19. 使用SurfaceView绘图应用程序
- 20. 绘图应用程序性能
- 21. 绘图应用程序 - 曲线拟合
- 22. Kivy简单绘图应用程序
- 23. Cocos2d绘图应用程序制作线
- 24. 绘图应用程序撤消按钮
- 25. 绘图应用程序,如何清除
- 26. iPhone开发 - 绘图应用程序
- 27. Android绘图应用程序崩溃
- 28. iPhone应用程序:绘制图
- 29. 在Silverlight中创建绘图/图表应用程序的指导
- 30. 在Android应用程序中绘制蜡烛贴图图表
@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