Hand

Represents a human hand.

public class Hand

Constructors

NameDescription

Hand()

Creates a new Hand object.

Hand(Hand)

Creates a new Hand object by copying the data from the specified hand.

Hand(int, HandSide, float, Dictionary<FingerJointType, FingerJoint>)

Creates a new Hand object with the specified id, type, confidence, and finger joints.

Properties

NameTypeDescription

ID

int

The ID of the hand.

Side

The side of the hand (left or right).

Confidence

float

The tracking confidence of the hand (0 to 1).

FingerJoints

The finger joints of the hand.

Thumb

The thumb of the hand.

Index

The index finger of the hand.

Middle

The middle finger of the hand.

Ring

The ring finger of the hand.

Pinky

The pinky finger of the hand.

Palm

The palm of the hand.

Read-Only. The specified finger joint.

IsOpen

bool

Read-Only. If the palm is open or closed.

BoundingBox2D

Read-Only. The 3D bounding box of the hand.

BoundingBox3D

Read-Only. The 3D bounding box of the hand.

Methods

NameReturn TypeDescription

ToJson()

string

Converts the value of this instance to a Json formatted string.

Returns the Parent joint.

Returns the Child joint.

Example

The examples show how to manage a hand with the Hand class.

Create a hand object

To create a hand object, start by creating a dictionary of FingerJoint objects.

Dictionary<FingerJointType, FingerJoint> fingerJoints = new Dictionary<FingerJointType, FingerJoint>();
fingerJoints.Add(FingerJointType.IndexTip, indexTip);
fingerJoints.Add(FingerJointType.IndexDIP, indexDIP);

Then, there are 3 supported constructors to create a hand object.

Create a hand object with the specified ID, type, confidence and finger joints.

Hand rightHand = new Hand(1, HandSide.Right, 0.5f, fingerJoints);

Create an empty hand object and assign values to each property.

Hand leftHand = new Hand();

leftHand.ID = 2;
leftHand.Side = HandSide.Left;
leftHand.Confidence = 0.5f;
leftHand.FingerJoints = fingerJoints;

Create a hand object by copying the values of another hand object.

Hand rightHandCopy = new Hand(rightHand);

Get finger and joint information from a hand

To retrieve finger and finger joint information from a hand object, you can retrieve the finger from the hand and then get the finger joint from the finger.

// Get the index finger from the hand.
Index index = rightHand.Index;

// Get the index tip joint from the retrieved finger.
FingerJoint rightIndexTip = index.Tip;

Alternatively, you can get the finger joint information directly from the hand object.

FingerJoint rightIndexTipNew = rightHand.Index.Tip;

Last updated