MouseMove事件对绘画来说太慢了

时间:2008-12-31 21:41:37

标签: c# .net winforms xna

我正在使用C#WinForms为我的XNA游戏创建一个关卡生成器。我有一个瓷砖网格,您可以使用铅笔工具绘制,就像在MSPaint中一样。问题是,当您快速拖动鼠标(ish)绘制线条时,会跳过图块。

我尝试过使用我在Google上看到的一种方法,即生成一个线程来进行绘画,但这似乎没有帮助。

有什么想法吗?

2 个答案:

答案 0 :(得分:6)

OTTOMH,您可以跟踪鼠标的最后一个点,在MouseMove处理程序中,您可以假设线性运动并确定最后一个点和当前点之间的所有图块。我的猜测是你不可能获得足够的MouseMove事件来处理用户非常快速移动鼠标的情况。

答案 1 :(得分:2)

真棒!工作得很好。

我在这里使用了DDA线算法

http://www.cs.unc.edu/~mcmillan/comp136/Lecture6/Lines.html

画线。

谢谢!