我正在尝试使用javascript API简单地使用Leap Motion获取滑动手势的方向 . 我的代码是:
$(document).ready(function() {
controller = new Leap.Controller("ws://localhost:6437/");
listener = new Leap.Listener();
listener.onFrame = function(controller) {
var frame = controller.frame();
var hands = frame.hands();
var pointables = frame.pointables();
var gestures = frame.gestures();
$("#rotationAxis").text(pointables.length);
$("#gestureDetected").text(gestures[0]);
}
controller.addListener(listener);
controller.enableGesture("swipe", true);
listener.onConnect = function(controller) {
// calibrate = new Leap.Calibrate(controller);
// calibrate.onComplete = function(screen){
// }
}
});
我可以从数组中获取当前手势,但无法获取类型或方向 . 有任何想法吗?
谢谢 .
5 回答
如果您关心向右,向左,向上或向下,您可以比较滑动方向向量的水平和垂直坐标的绝对值,以查看滑动是更垂直还是更水平(然后将相关坐标与零进行比较)要查看滑动是向右还是向左,向上还是向下):
通过稍微复杂的比较,您可以将滑动分类为向前或向后 .
with enableGestures:true和var gesture = frame.gestures [i];
这就是我自己做的方式,如果它是左或右,我无法回想起但这不是一个漫长的过程
经过快速分析后,我找到了您要查找的信息:
帧对象仅在有一个时才有手势 . 一帧可以包含0手,0手指或0手势 . 您必须检查是否存在手势,然后检索所需信息 .
这是一个适合我的代码示例: