API reference
API reference
Select your platform
No SDKs available
No versions available

HandPose Class

Data for the pose of a hand for grabbing an object.
It contains not only the position of the hand and the fingers but other relevant data to the pose, such as which fingers are locked.
Even though this class is Serializable, it is not a Component. The HandPoseEditor class should be used (in conjunction with the HandGrabInteractableEditor class) to edit the values in the inspector. HandPose data can only be used in conjunction with interactors associated with posable hands, such as HandGrabInteractor.

Constructors

HandPose ()
Empty constructor for HandPose.
This constructor is automatically invoked by Unity when instantiating deserialized poses and contains features for exposing those poses to Editor tools.
Signature
Oculus.Interaction.HandGrab.HandPose.HandPose()
HandPose ( handedness )
A basic handedness-setting constructor for HandPoses.
This is a convenience method equivalent to invoking HandPose.HandPose, then setting handedness as the Handedness of the newly-created instance.
Signature
Oculus.Interaction.HandGrab.HandPose.HandPose(Handedness handedness)
Parameters
handedness: Handedness  The handedness to be set on the new instance.
HandPose ( other )
A basic copy constructor for HandPoses.
This is a convenience method equivalent to invoking HandPose.HandPose, then passing other and false to CopyFrom(HandPose, bool) on the newly-created instance.
Signature
Oculus.Interaction.HandGrab.HandPose.HandPose(HandPose other)
Parameters
other: HandPose  The HandPose from which the new instance should copy its data.

Properties

FingersFreedom : JointFreedom []
[Get]
Indicates which fingers can be locked, constrained, or free in this hand pose.
Fingers in this data are represented at their index in the HandFinger enum.
Signature
JointFreedom [] Oculus.Interaction.HandGrab.HandPose.FingersFreedom
Handedness : Handedness
[Get][Set]
The Input.Handedness of the hand represented by the contained pose data.
Signature
Handedness Oculus.Interaction.HandGrab.HandPose.Handedness
JointRotations : Quaternion []
[Get][Set]
The collection of joints and their rotations in this hand.
This data follows the conventions from FingersMetadata.HAND_JOINT_IDS.
Signature
Quaternion [] Oculus.Interaction.HandGrab.HandPose.JointRotations

Methods

CopyFrom ( from , mirrorHandedness )
Copies the values over to the hand pose without requiring any new allocations.
This is safe thanks to the flat and predictable way data is stored in JointRotations, FingersFreedom etc. within HandPose instances.
Signature
void Oculus.Interaction.HandGrab.HandPose.CopyFrom(HandPose from, bool mirrorHandedness=false)
Parameters
from: HandPose  The hand pose to copy the values from.
mirrorHandedness: bool  Invert the received handedness.
Returns
void

Static Methods

Lerp ( from , to , t , result )
Interpolates between two HandPoses, if they have the same Handedness and joints.
Signature
static void Oculus.Interaction.HandGrab.HandPose.Lerp(in HandPose from, in HandPose to, float t, ref HandPose result)
Parameters
from: in HandPose  Base HandPose to interpolate from.
to: in HandPose  Target HandPose to interpolate to.
t: float  Interpolation factor, 0 for the base, 1 for the target.
result: ref HandPose  A HandPose positioned/rotated between the base and target.
Returns
void