I am making a puppet app with the Leap Motion. Whenever I try and get the Yaw of a hand it always seems to be wrong (ie: My hand is flat but it says its at 45 degrees or my hand is flat and it says its at -30 degrees, generally unreliable and jumpy). I use
Hand hand = frame.hands().get(0);
palm1Position = hand.palmPosition();
normal = hand1.palmNormal();
direction = hand1.direction();
palmRoll = Math.toDegrees(normal1.roll());
palmYaw = Math.toDegrees(direction1.yaw());
To get the Roll and Yaw of the hand. The roll works perfectly but the yaw is horrible. This is a problem because marionettes rely heavily on yaw. Any idea why this is happening and how I can fix it?