正常化和平滑鼠标移动

本文关键字:移动 鼠标 平滑 正常化 | 更新日期: 2023-09-27 18:12:53

是否有办法平滑鼠标移动?我想消除所有的小抖动在正常的鼠标移动的手,就像你永远不能画一条干净的线,因为你的手做小的抖动运动。

这可能很难理解我的意思,但如果你知道zbrush他们有一个功能,被称为懒惰鼠标http://www.pixologic.com/docs/index.php/Lazy_Mouse我正在寻找一种方法来重新创建这个在我的应用程序。我可以读取鼠标的位置与Cursor.Position,但我没有找到一种方法来平均这些数字之前,他们被发送到屏幕上的指针。

正常化和平滑鼠标移动

这只有在您可以稍微延迟鼠标移动的效果时才有可能。你以一定的频率记录下鼠标移动的点,然后将它们平均成一条线。然后用这条线画出你需要的任何东西。您不能直接将鼠标光标设置为平均位置,因为这将作为一个新的鼠标移动反馈到您的程序中。

确保您构建它,以便您可以调整延迟鼠标移动的时间,以及平均的积极程度(例如通过限制其包含的点数),以及记录鼠标移动的频率(如果太频繁,这可能会影响cpu使用)。

你当然必须在你的应用程序中为鼠标创建某种抽象,并创建一种方法让应用程序获得它。(我会尽量保持这尽可能类似于正常的winforms/wpf,所以我可以恢复更改,只是使用鼠标移动直接如果需要)。