## C Specification

XrHandJointVelocityEXT structure describes the linear and angular velocity of a hand joint.

``````typedef struct XrHandJointVelocityEXT {
XrSpaceVelocityFlags    velocityFlags;
XrVector3f              linearVelocity;
XrVector3f              angularVelocity;
} XrHandJointVelocityEXT;``````

## Members

Member Descriptions
• `velocityFlags` is a bitfield, with bit masks defined in XrSpaceVelocityFlagBits, to indicate which members contain valid data. If none of the bits are set, no other fields in this structure should be considered to be valid or meaningful.

• `linearVelocity` is the relative linear velocity of the hand joint with respect to and expressed in the reference frame of the corresponding XrHandJointsLocateInfoEXT::`baseSpace`, in units of meters per second.

• `angularVelocity` is the relative angular velocity of the hand joint with respect to the corresponding XrHandJointsLocateInfoEXT::`baseSpace`. The vector’s direction is expressed in the reference frame of the corresponding XrHandJointsLocateInfoEXT::`baseSpace` and is parallel to the rotational axis of the hand joint. The vector’s magnitude is the relative angular speed of the hand joint in radians per second. The vector follows the right-hand rule for torque/rotation.

## Description

Valid Usage (Implicit)
• The `[XR_EXT_hand_tracking]` extension must be enabled prior to using XrHandJointVelocityEXT

• `velocityFlags` must be a valid combination of XrSpaceVelocityFlagBits values

• `velocityFlags` must not be `0`