LeapMotion Leap.js でジェスチャー取得

Leap.jsを使って、ジェスチャーを取得してみました。

f:id:marchantime:20130903232511p:plain

 

前回から使っている「DOM Visualizer」のソースを改造して、ジェスチャーのIDとタイプを表示するようにしました。

 

ジェスチャーの情報は、Gestureクラスが保持しています。

まず、frameクラスからGestureクラスのオブジェクトを取得します。

var gesture = frame.gestures[0];

 

gestures[id]は、Gestureクラスのオブジェクトのリストです。

ここでは、リストの0番目を指定しましたが、複数のオブジェクトが入ることがあります。なぜなら、複数の指のジェスチャーを同時に認識できるからです。

例えば、手を開いたままグルグルまわすと、5本の指それぞれに対してサークルのジェスチャーが認識されます。

 

次に、Gestureクラスのメンバである、idとtypeを取得します。

if(gesture){

 var gestureId = gesture.id;

 var gestureType = gesture.type;

}

 

typeはstring型で、以下の4種類です。

  • circle
  • swipe
  • screenTap
  • keyTap

 

最後に、表示します。

document.getElementById('out').innerHTML = "<div>"+frame.toString()+ gestureId + gestureType +"</div>";

 

APIは↓ここを参照

http://js.leapmotion.com/api/v0.2.0/docs#leap-gesture