Leap Motion

Les Composants du SDK

Les Classes

Les classes de l'API Leap Motion sont :

Les Frames

Les Frames ont un role de conteneur, il fournit des liste de données de suivi décrivant les mouvements effectué dans le champ de vision.
Il existe 2 méthodes de récupération des données :

L’analyse de la frame permet de définir la rotation et l’amplitude du mouvement global qui a été effectué. Les données sont obtenues par comparaison avec les données antérieures. Ces facteurs peuvent être utilisées pour réaliser des mouvements sans actions extérieures La récupération des données passe par le Getter du Frame qui est crée depuis le controller lui-même

Les Données de Suivi

La Frame permet de récupéré les données de suivis.
Leap ne distingue pas la main droite, de la main gauche. De plus, il peut detecter plus de 2 mains. Cependant, il est conseillé de mettre au maximum 2 mains dans le champ de vision du controller. Pour ne pas surcharger le système, si la main est fermé, les données concernant les doigts ne seront pas analysés.
La main dispose des attibuts qui permettent de réaliser des mouvements et des interactions avec l’application.

Leap motion analyse les déplacements de la main ainsi que des doigts ou outils qu’elle contient, cela lui permet de définir des mouvement suivants les facteurs comme la rotation (axe, angle, matrice), facteur d’échelle ou translation. Pour l’analyse des mouvements, un filtre est utilisé pour pouvoir lisser les mouvements et affiner les données.

Les Pointables : Ils regroupent les doigts, les outils et les éléments orientables (plusieurs doigts) que l’ont peut être amené à utiliser. Ils disposent de nombreux attributs décrivant ces caractéristiques propres. Avec ces informations, on peut définir sa position au sein du repère du controller.

On peut accéder à ces éléments qu’au travers de l’objet mains ou de leurs ID. Si nous n’avons pas besoin de différencier l’outil du doigt, on utilise les pointables. Le controller différencie les doigt des outils en fonction de leur longueur et de leur finesse. Il récupére les positions de l’objet pour pouvoir reconnaitre un mouvement et réalisée des actions au niveau de l’application. Les caractéristiques de ces objets sont:

Les Gestures

Leap Motion reconnait des schémas de mouvement prédéfinis, comme ils détectent les pointables, ils détectent les déplacements. Ils sont accessibles de la même façon que les autres données de suivis via le Frame.
Lorsque Leap Motion considére que l’un des mouvements effectués est une gestures, il l’ajoute dans la liste.Pour intégrer les gestures dans une application, il faudra les activer au niveau du Controller.
La reconnaissance du mouvement commence au moment ou l’utilisateur effectue un mouvement continu dans un sens et il se termine si l’utilisateur ralenti sa vitesse de déplacement ou si il change de direction. Les données sont mises a jour à partir du moment ou le mouvement a commencé.

Leap peut reconnaitre un mouvement de balayage a l’aide de la classe SwipeGesture.

Leap peut reconnaitre un mouvement circulaire de l’index a l’aide de la classe CircleGesture.

Leap Motion reconnait 2 types de toucher:
Les Key Taps : qui est un mouvement vers le bas.Ce mouvement est similaire à une pression sur un clavier d’ordinateur,il est gére par la classe KeyTapGesture.

Les Screen Taps : qui est un mouvement vers l’écran.Ce mouvement est similaire à une pression tactile sur l’écran,il est gére par la classe ScreenTapGesture.