Étape 4: Cadre et geste données
Sauter les données de trame de requête qui comprend les gestes (cercle, pincée, paume Face vers le bas et tous les autres gestes)
Mouvement de saut a deux IR caméra et trois IR Led. Les formes de mouvement de saut une Collection 3D des données en utilisant les trois IR Led qu’éteindre un motif de points de l’IR, la caméra IR prend des photos connus sous forme de trames. Les cadres sont envoyés de l’appareil de mouvement de saut à l’ordinateur et nous pouvons la programmer.
Le saut analyse de mouvement, les images et le point de positionnement à l’aide de mathématiques complexes, puis de comparer les données des deux images prises par caméra infrarouge et l’utilisation de la représentation 2D deux pour obtenir une représentation 3D.
Le dispositif de mouvement de saut capture à 300 fps. Puis, nous présentons ce qui se passe à chacune des trames envoyées à notre ordinateur.
Code :
! wasInTabState) {/ * if(palmN.getZ() < =-.7 & & * rightHand.grabStrength() <. 1) {* System.out.println ("Palm vitesse verticale:" + * rightHand.palmVelocity().getY()) ; float resultVerticalV = * Math.round(Math.abs(rightHand.palmVelocity().getY()) - 1) ; * //if (resultVerticalV > 0) {robot.mouseWheel((int) * Math.round(((rightHand.palmVelocity().getY()) / 500))); / /} *} else {* / < /p >< p > si (! isMoving & &! wasInTabState & & frame.gestures().count() > 0 & & frame.hands().count() == 1 & &! isResizing) {CircleGesture circleGesture = new CircleGesture (cadre.gestures().get(0)); / / System.out.println ("pincer la force:" + / / rightHand.pinchStrength()) ; Si (circleGesture.durationSeconds() >.5 & &! justCircleGestured & & rightHand.pinchStrength() >.8) {System.out.println ("fermé une fenêtre!"); robot.keyPress(KeyEvent.VK_ALT) ; robot.keyPress(KeyEvent.VK_F4) ; robot.keyRelease(KeyEvent.VK_F4) ; robot.keyRelease(KeyEvent.VK_ALT) ; justCircleGestured = true;}} else {justCircleGestured = false;} < /p >< p > flotteur xSpeed = (palmV.getX() / 6) ; float ySpeed = (palmV.getY() / 6) ; System.out.println ("xSpeed:" + xSpeed + ", ySpeed:" + ySpeed) ; robot.mouseMove((int) (currentMouseX + xSpeed), (int) (currentMouseY - ySpeed)); < /p >< p > / /}}}} < /p >