Emulating Button Press Using Kinect/SimpleOpenNI + Processing Depth
===

I am using Kinect with Simple OpenNI and Processing, and I was trying to use the Z position of a hand to emulate a button press. So far when I try it using one hand it works really well, however, when I try to get it to work with a second hand, only one of the hands work. (I know it can be more efficient by moving everything except the fill out of the if statements, but I kept those in there just in case I want to change the sizes or something.)

irz and ilz are the initial Z positions of the hands when they are first recognized by onCreateHands and rz and lz are the current Z positions. As of now, the code works fine with one hand, but the other hand will either stay pressed or unpressed. If i comment one of the sections out, it works fine as well.

    if (rz - irz > 0) {
     pushStyle();
     fill(60);
     ellipse(rx, ry, 10, 10);
     popStyle();
     rpressed = true;
    }
    else {
     pushStyle();
     noFill();
     ellipse(rx, ry, 10, 10);
     popStyle();
     rpressed = false;
    }
  
    if (lz - ilz > 0) {
     pushStyle();
     fill(60);
     ellipse(lx, ly, 10, 10);
     popStyle();
     lpressed = true;
    }
    else {
     pushStyle();
     noFill();
     ellipse(lx, ly, 10, 10);
     popStyle();
     lpressed = false;
    }


I tried outputting the values of rz - irz and lz - ilz and the numbers range from small negative values to small positive values (around -8 to 8) for lz - ilz. But rz - irz outputs numbers from around 8-30 depending on each time I run it and is never consistent. Also, when I comment out the code for the lz-ilz, the values for rz-irz look just fine and it operates as intended. Is there a reason tracking both Z positions throws off one hand? And is there a way to get it to work?

Thanks!