diff -r 25e71ada2a6d -r 37ebedd84755 middleware/Tracking/Gestures/SwipeDetector.cs --- a/middleware/Tracking/Gestures/SwipeDetector.cs Wed May 30 10:22:46 2012 +0200 +++ b/middleware/Tracking/Gestures/SwipeDetector.cs Thu Jun 21 16:52:56 2012 +0200 @@ -65,12 +65,14 @@ for (int i = localHistory.Count - indexesToCheck + 1; i < localHistory.Count; i++) { //Si la position Y de la main est plus haute que la tête - //OU si la position Y de la main est plus basse que la hanche + //OU si la position Y de la main est plus basse que la hanche (les genoux) //OU si la nouvelle position X de la main est à droite de la précédente //OU si la nouvelle position Y de la main est plus éloignée de la distance N par rapport à la première position Y //Alors on retourne faux. if (localHistory[i][(int)JointType.HandRight].Position.Y < localHistory[i][(int)JointType.Head].Position.Y || - localHistory[i][(int)JointType.HandRight].Position.Y > localHistory[i][(int)JointType.HipCenter].Position.Y || + //localHistory[i][(int)JointType.HandRight].Position.Y > localHistory[i][(int)JointType.HipCenter].Position.Y || + localHistory[i][(int)JointType.HandRight].Position.Y > localHistory[i][(int)JointType.KneeLeft].Position.Y || + localHistory[i][(int)JointType.HandRight].Position.Y > localHistory[i][(int)JointType.KneeRight].Position.Y || localHistory[i][(int)JointType.HandRight].Position.X > localHistory[i - 1][(int)JointType.HandRight].Position.X || Math.Abs(localHistory[i][(int)JointType.HandRight].Position.Y - startPoint.Y) > refDistance / 2) return false; @@ -120,12 +122,14 @@ for (int i = localHistory.Count - indexesToCheck + 1; i < localHistory.Count; i++) { //Si la position Y de la main est plus haute que la tête - //OU si la position Y de la main est plus basse que la hanche + //OU si la position Y de la main est plus basse que la hanche (les genoux) //OU si la nouvelle position X de la main est à gauche de la précédente //OU si la nouvelle position Y de la main est plus éloignée de la distance N par rapport à la première position Y //Alors on retourne faux. if (localHistory[i][(int)JointType.HandLeft].Position.Y < localHistory[i][(int)JointType.Head].Position.Y || - localHistory[i][(int)JointType.HandLeft].Position.Y > localHistory[i][(int)JointType.HipCenter].Position.Y || + //localHistory[i][(int)JointType.HandLeft].Position.Y > localHistory[i][(int)JointType.HipCenter].Position.Y || + localHistory[i][(int)JointType.HandLeft].Position.Y > localHistory[i][(int)JointType.KneeLeft].Position.Y || + localHistory[i][(int)JointType.HandLeft].Position.Y > localHistory[i][(int)JointType.KneeRight].Position.Y || localHistory[i][(int)JointType.HandLeft].Position.X < localHistory[i - 1][(int)JointType.HandLeft].Position.X || Math.Abs(localHistory[i][(int)JointType.HandLeft].Position.Y - startPoint.Y) > refDistance / 2) return false;