Esempio n. 1
0
    public bool IsStop()
    {
        // Check for palm being lowest joint
        var curPalmPos = pos[n_samples - 1].palm;

        foreach (var p in pos[n_samples - 1].TipsNoThumb())
        {
            var check = vh.greaterEqual(curPalmPos, p);
            if (check.y)
            {
                return(false);
            }
        }

        // Check for low z range across current hand
        var vectors = pos[n_samples - 1].ToArray();

        (var min, var max) = (vectors[0], vectors[0]);
        foreach (var v in vectors)
        {
            (min, max) = vh.minMax(min, max, v);
        }
        if (vh.sub(max, min).z > 40)
        {
            return(false);
        }

        Console.WriteLine("here");

        return(true);
    }
Esempio n. 2
0
 public (Joints min, Joints max) minMax(Joints curMin, Joints curMax, Joints j)
 {
     (curMin.pinky, curMax.pinky)   = vh.minMaxList(curMin.pinky, curMax.pinky, j.pinky);
     (curMin.ring, curMax.ring)     = vh.minMaxList(curMin.ring, curMax.ring, j.ring);
     (curMin.middle, curMax.middle) = vh.minMaxList(curMin.middle, curMax.middle, j.middle);
     (curMin.index, curMax.index)   = vh.minMaxList(curMin.index, curMax.index, j.index);
     (curMin.thumb, curMax.thumb)   = vh.minMaxList(curMin.thumb, curMax.thumb, j.thumb);
     (curMin.palm, curMax.palm)     = vh.minMax(curMin.palm, curMax.palm, j.palm);
     return(curMin, curMax);
 }