I got the example in this link.
I can’t understand the addmove, costLeven and meatureGesture methods.
Can you explain it step by step?
Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.
Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.
Lost your password? Please enter your email address. You will receive a link and will create a new password via email.
Please briefly explain why you feel this question should be reported.
Please briefly explain why you feel this answer should be reported.
Please briefly explain why you feel this user should be reported.
Take a look at the algorithm on this page because it contains the original code this was derived from.
Here’s my summary of what the functions do:
addmove: First it decides if the mouse/pointer has moved far enough to count as a new position to be recorded. If it has, then it determines which of the 8-directions the move is in and adds that to the list of moves.
costLeven: computes the Levenshtein distance between two sequences. In this case it is used to measure the distance between each predefined gesture sequence and the gesture sequence input by the user. It basically is used to figure out which letter is the best choice to output based on the input gesture. A small Levenshtein distance indicates a better match.
matchGesture(closest to meatureGesture): Takes the gesture input by the user and checks it against all predefined gestures to find the best match based on the Levenshtein distance. If there is a match that is close enough, then the key of the best-matched predefined gesture is passed to onGestureListener.onGesture() which triggers some action. In this case it outputs a letter to the screen.