mirror of
https://github.com/DeeJanuz/frametop.git
synced 2026-10-06 07:00:14 +02:00
Hands: fixes from the second headset test (pinches)
- The palm-down filter is off by default: the user's deliberate pinches, hand raised, read 0.90-0.99, like typing. - Typing is told apart by the keyboard instead: the input relay sends the pointer helper "typing" on key presses, and it takes no pinch within POINTER_PINCH_TYPING (1 s) of one. - Grips are still held to hands raised (POINTER_GRIP_BELOW, 0.35 m below the eyes); pinches aren't, since the user's own sat 0.35-0.45 m below, elbow resting. - A grip doesn't begin with the thumb on the index tip: that's a pinch with the other fingers curled, which was taken for a grip. - A pinch's point is the index and middle knuckles: the tips' midpoint moved 1-2 cm as the pinch opened, dragging every release off its press. - ft-hands --gesture-log prints what the detectors measure, 10 times a second. Pinches still aren't reliable enough to use; hand tracking is parked for now in favour of the controllers. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
fbd188f5f9
commit
5ca4160a7e
7 files changed
+70
-25
No files matched your search
@@ -10,7 +10,8 @@
|
||||
* One slot per side and gesture: pinch[0] and grip[0] are the left hand, [1] the right.
|
||||
* A gesture follows the hand it began on until it ends.
|
||||
* Pinch: begins when the thumb and index tips close within begin_m and ends when they
|
||||
* open past end_m (the gap between keeps it from flickering). point is between the tips.
|
||||
* open past end_m (the gap between keeps it from flickering). point is the index and middle
|
||||
* knuckles, which don't move as the fingers open and close (the tips' midpoint did).
|
||||
* Grip: a closed hand. It begins when all four fingers are curled in (each fingertip
|
||||
* nearer the wrist than grip_begin times its knuckle is) and ends when they open past
|
||||
* grip_end on average. distance is that average (about 2 open, under 1.2 closed), strength
|
||||
@@ -55,8 +56,8 @@ typedef struct {
|
||||
float distance; /* pinch: thumb tip to index tip, m, at this user's */
|
||||
/* hand size. grip: the fingers' mean curl (above) */
|
||||
float strength; /* 0 open .. 1 closed */
|
||||
float point[3]; /* pinch: between the thumb and index tips; grip: */
|
||||
/* the palm's centre */
|
||||
float point[3]; /* pinch: the index and middle knuckles; grip: the */
|
||||
/* palm's centre */
|
||||
float begin_point[3]; /* point when the current or last one began */
|
||||
} fh_pinch_t; /* 64 bytes */
|
||||
|
||||
|
||||
Reference in new issue
Block a user