我想制作一个与特定手指对应的输入字符的应用程序。我尝试使用finger.isExtension来感知哪个手指是"笔触"或弯曲,但是使用此功能应该最大程度地检测手指的运动。
我会尝试使用KeyTapGesture的另一个功能,但我不知道这个功能是否可以区分手指或知道哪个手指做点击。
有谁知道如何确定特定的手指进行水龙头?
我已经添加了pointable(),这是我的C#代码:
case Gesture.GestureType.TYPE_KEY_TAP:
KeyTapGesture keytap = new KeyTapGesture (gesture);
controller.Config.SetFloat("Gesture.KeyTap.MinDownVelocity", 40.0f);
controller.Config.SetFloat("Gesture.KeyTap.HistorySeconds", .2f);
controller.Config.SetFloat("Gesture.KeyTap.MinDistance", 1.0f);
controller.Config.Save();
HandList handsForGesture = gesture.Hands;
Hand rightHand = handsForGesture[0];
Pointable tappingPointable = keytap.Pointable;
PointableList pointablesForGesture = rightHand.Pointables;
int exFingers = 0;
for (int f = 0; f < rightHand.Pointables.Count; f++)
{
Pointable digit = rightHand.Pointables[f];
if (digit.IsValid)
{
exFingers++;
SafeWriteLine("Finger: " + f);
}
}
break;
结果是所有的手指都做了水龙头,即使我只用一根手指做了。
用于此目的的 KeyTap 手势对象具有 pointable() 属性。(在 JavaScript 中使用 pointableIds。