4

我在这个链接中得到了例子。

我无法理解addmove,costLevenmeatureGesture方法。

你能一步一步解释吗?

4

1 回答 1

5

看看这个页面上的算法,因为它包含了原始代码。

以下是我对函数作用的总结:

  • addmove:首先它决定鼠标/指针是否移动了足够远以算作要记录的新位置。如果有,那么它会确定移动在 8 个方向中的哪个方向,并将其添加到移动列表中。

  • costLeven:计算两个序列之间的Levenshtein 距离。在这种情况下,它用于测量每个预定义的手势序列与用户输入的手势序列之间的距离。它基本上用于根据输入手势确定哪个字母是输出的最佳选择。较小的 Levenshtein 距离表示更好的匹配。

  • matchGesture(closest to meatureGesture):获取用户输入的手势,并根据所有预定义的手势进行检查,以根据 Levenshtein 距离找到最佳匹配。如果存在足够接近的匹配,则将最匹配的预定义手势的键传递给触发某些操作的 onGestureListener.onGesture()。在这种情况下,它会向屏幕输出一个字母。

于 2010-03-10T18:52:50.800 回答