Leap Motion API类库:Gesture

1.Gesture

    手势类表示对用户移动的识别。

    在其区域内的跳跃活动,在其区域内的特定的移动模式或者用户手势命令的执行,就是活动姿势。

    重要的是:必须启用手势识别,否则没有手势识别或报告。

    手势类的子类  定义了由运动控制器识别的特定运动模式的属性,子类包括:

  • CircleGesture()一    一个手指的圆周运动

  • SwipeGesture() – 一条直线运动的手和手指展开

  • ScreenTapGesture() – 手指向前运动.

  • KeyTapGesture() – 手指向下的敲击动作.

    画圈和滑动的手势是连续的,这些对象可以有一个状态,更新,停止等,

    屏幕点击手势是一个离散的手势,离开就散了,

    从帧对象中获取有效的手势实例,你可以获得一个手势列表从手势帧数据数组里,

    手势对象可以是无效的,可以获得无效的id

    未初始化的对象视为无效的手势。

    下面的例子演示了如何从一个跟踪数据帧中获取手势对象:

var controller = Leap.loop({enableGestures: true}, function(frame){
  if(frame.valid && frame.gestures.length > 0){
    frame.gestures.forEach(function(gesture){
        switch (gesture.type){
          case "circle":
              console.log("Circle Gesture");
              break;
          case "keyTap":
              console.log("Key Tap Gesture");
              break;
          case "screenTap":
              console.log("Screen Tap Gesture");
              break;
          case "swipe":
              console.log("Swipe Gesture");
              break;
        }
    });
  }});

     您还可以添加一个侦听器回调到一个控制器对象。在每个设备帧中,您的回调被调用为每个手势对象:

var controller = Leap.loop({enableGestures: true}, function(frame){
  //... handle frame data
  });
  controller.on("gesture", function(gesture){
  //... handle gesture object
  });


你可能感兴趣的:(Leap Motion API类库:Gesture)