【发布时间】:2013-05-18 23:15:13
【问题描述】:
我姐姐和我正在编写一个程序来帮助患有震颤(手发抖)的人。
程序会识别鼠标光标是否变慢,然后使光标更容易控制并变慢以使颤抖的手更容易使用鼠标。
程序运行至今,只有一个问题:如果用户将鼠标移到另一个位置,速度会在短时间内为 0。程序假定光标必须放慢,但这不应该发生。
有什么方法可以检测鼠标是否接触到鼠标垫/地面?
我们正在用 C# 编程。
【问题讨论】:
-
好问题,但不幸的是我认为这不可能
-
我们尝试通过鼠标光标的速度来识别用户在空中举起鼠标的动作。如果一个人在颤抖,那么鼠标光标的速度几乎永远不会为0。如果鼠标在空中,则速度应该为0。不幸的是,这并没有很好地工作....
-
一个想法:我假设如果鼠标有意停止,它首先会变慢。而如果它在空中,停止会更加突然。也许尝试检测一下?如果您已经有一个算法,它可能只是校准/改进它的问题。我建议您在各种情况下捕获鼠标速度流并从中制作图表。它会使您想要检测的行为的特征更加明显。
-
好主意,但这也是我们的第一个猜测。我们就像你说的那样做了一个图表,但它表明速度值并没有突然停止。我们假设发生这种情况是因为用户仍在向某个方向移动,而鼠标仅悬空一半。或者,用户在到达鼠标垫的 和 时也会变慢。