c++ - 在绘图应用程序中连续绘图

标签 c++ drawing

我想知道绘图应用程序如何在鼠标按下的整个过程中绘制而没有空白。我的意思是,例如,如果程序只在鼠标的 X、Y 坐标处绘制圆圈,那么如果鼠标移动得太快,它看起来就像一堆小圆圈,而不是一条漂亮的连续线。如果不不断地在鼠标 0.001 秒前的位置和鼠标现在的位置之间画一条短直线,怎么能做到这一点。 谢谢

最佳答案

如果不不断地在当前鼠标点和之前的点之间画一条线,就无法完成,这就是绘图程序通常的原因。

更高级的绘图程序会将曲线拟合到多个先前的点以实现更自然的绘图笔触,但原理是相同的。

更新:根据评论,您的绘图代码中似乎包含了一个计时器。这肯定是不必要的,因为只要移动鼠标,您的应用程序就会生成一个 MouseMove 事件,您可以使用该事件来绘制下一行。

关于c++ - 在绘图应用程序中连续绘图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2724651/

相关文章:

c++ - 正则表达式慢

javascript - 在javascript中动态生成新 Canvas

java - 将图像绘制为按钮的背景或使用 Java2D 绘制它更好/更快吗

c++ - 在 std::vector 中搜索一个值的近似值

c++ - 检查不透明C handle 是否OK

c++ - 从 end() 函数返回的迭代器获取 BST 的最后一个节点?

opengl - 为什么 OpenGL 绘制的东西是颠倒的?

Css,分别悬停每个区域

c# - 如何从一直漂浮到屏幕上的小行星射出一个三角形?

c++ - (C++) 确定不匹配的正则表达式捕获组