Unigine::Plugins::LeapMotion::Finger Struct
LeapMotion plugin must be loaded.
This structure represents a finger of a hand. All coordinates are relative to the origin of the Leap Motion coordinate system.
The Finger structure is declared as follows:
struct Finger
{
enum
{
TYPE_THUMB = 0, // The thumb
TYPE_INDEX = 1, // The index or fore-finger
TYPE_MIDDLE = 2, // The middle finger
TYPE_RING = 3, // The ring finger
TYPE_PINKY = 4, // The pinky or little finger
FINGER_NUM_TYPES,
};
int id;
int type;
float length;
float width;
int is_extended;
int is_valid;
Unigine::Math::vec3 tip_position;
Unigine::Math::vec3 tip_velocity;
Unigine::Math::vec3 direction;
Unigine::Math::vec3 stabilized_tip_position;
Bone bones[Bone::BONE_NUM_TYPES];
};
Elements of the array of bones of the finger can be accessed using Bone::TYPE_* values as indices.
struct Finger
Fields
- enum TYPE -
- TYPE_THUMB - thumb
- TYPE_INDEX - index or fore finger
- TYPE_MIDDLE - middle finger
- TYPE_RING - ring finger
- TYPE_PINKY - pinky or little finger
- FINGER_NUM_TYPES - total number of finger types.
- int id - Identifier of the finger. Finger IDs are assigned based on the hand ID. If a hand has an ID of "5", then its fingers are assigned IDs 50 to 55, ordered from thumb to pinky.
- int type - Finger type. One of the Finger::TYPE_* values.
- float length - Length of the finger, in meters.
- float width - Width of the finger, in meters.
- int is_extended - Value indicating if the finger is extended.
- int is_valid - Value indicating if the finger contains valid tracking data.
-
Math::vec3 tip_position - Coordinates of the instantaneous position of the finger tip.
All coordinates are relative to the origin of the Leap Motion coordinate system.
-
Math::vec3 tip_velocity - Instantaneous velocity of the finger tip, in m/s.
All coordinates are relative to the origin of the Leap Motion coordinate system.
- vec3 direction - Current pointing direction vector of the finger.
All coordinates are relative to the origin of the Leap Motion coordinate system.
-
Math::vec3 stabilized_tip_position - Coordinates of the finger tip position filtered and stabilized using velocity and past positions.
All coordinates are relative to the origin of the Leap Motion coordinate system.
- LeapMotion::Bone[] bones - Array of bones of the finger. Elements of the array can be accessed using Bone::TYPE values as indices.
Last update:
2023-12-19
Help improve this article
Was this article helpful?
(or select a word/phrase and press Ctrl+Enter)