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

DominantHandRef Class

Extends MonoBehaviour
DominantHandRef is a utility component that delegates all of its IHand implementation to the Left or the Right Hand provided depending on which one is the Dominant one.

Protected Fields

_started : bool
Signature
bool Oculus.Interaction.Input.DominantHandRef._started

Fields

Active : bool
Signature
bool Oculus.Interaction.Input.DominantHandRef.Active
CurrentDataVersion : int
Signature
int Oculus.Interaction.Input.DominantHandRef.CurrentDataVersion
Hand : IHand
Signature
IHand Oculus.Interaction.Input.DominantHandRef.Hand
Handedness : Handedness
Signature
Handedness Oculus.Interaction.Input.DominantHandRef.Handedness
IsConnected : bool
Signature
bool Oculus.Interaction.Input.DominantHandRef.IsConnected
IsDominantHand : bool
Signature
bool Oculus.Interaction.Input.DominantHandRef.IsDominantHand
IsHighConfidence : bool
Signature
bool Oculus.Interaction.Input.DominantHandRef.IsHighConfidence
IsPointerPoseValid : bool
Signature
bool Oculus.Interaction.Input.DominantHandRef.IsPointerPoseValid
IsTrackedDataValid : bool
Signature
bool Oculus.Interaction.Input.DominantHandRef.IsTrackedDataValid
Scale : float
Signature
float Oculus.Interaction.Input.DominantHandRef.Scale

Properties

LeftHand : IHand
[Get]
Signature
IHand Oculus.Interaction.Input.DominantHandRef.LeftHand
RightHand : IHand
[Get]
Signature
IHand Oculus.Interaction.Input.DominantHandRef.RightHand
SelectDominant : bool
[Get][Set]
Signature
bool Oculus.Interaction.Input.DominantHandRef.SelectDominant
WhenHandUpdated : Action
Signature
Action Oculus.Interaction.Input.DominantHandRef.WhenHandUpdated

Protected Methods

Awake ()
Signature
virtual void Oculus.Interaction.Input.DominantHandRef.Awake()
Returns
void
OnDisable ()
Signature
virtual void Oculus.Interaction.Input.DominantHandRef.OnDisable()
Returns
void
OnEnable ()
Signature
virtual void Oculus.Interaction.Input.DominantHandRef.OnEnable()
Returns
void
Start ()
Signature
virtual void Oculus.Interaction.Input.DominantHandRef.Start()
Returns
void

Methods

GetFingerIsHighConfidence ( finger )
Queries whether the tracking data for a particular finger is high- or low-confidence.
Signature
bool Oculus.Interaction.Input.DominantHandRef.GetFingerIsHighConfidence(HandFinger finger)
Parameters
finger: HandFinger  The finger to be checked for high-confidence tracking data
Returns
bool  True if the system is confident in its tracking data for the requested finger, false otherwise
GetFingerIsPinching ( finger )
Checks whether a particular finger is considered to be pinching.
How a given finger is determined to be pinching is an implementation detail which can vary by finger/platform and is not part of the contract of this method, which merely provides a unified way to query for the semantic concept of a "pinch".
Signature
bool Oculus.Interaction.Input.DominantHandRef.GetFingerIsPinching(HandFinger finger)
Parameters
finger: HandFinger  The finger to check for pinching behavior
Returns
bool  Whether or not the requested finger is considered to be pinching
GetFingerPinchStrength ( finger )
Queries the strength with which a particular finger is considered to be pinching.
"Strength" in this case is an indication of how similar or different the finger's pose is to what could be considered a pinch; a finger with its tip far from the thumb will likely have a pinch strength at or near 0, while a finger with its tip touching the thumb will likely have a pinch strength at or near 1.
Signature
float Oculus.Interaction.Input.DominantHandRef.GetFingerPinchStrength(HandFinger finger)
Parameters
finger: HandFinger  The finger to be checked for pinch strength
Returns
float  A number from 0 to 1 indicating how far or close, respectively, the finger is from pinching
GetIndexFingerIsPinching ()
A convenience method to check for the most commonly-desired pinching behavior.
Calling this method is equivalent to calling GetFingerIsPinching(HandFinger) with the argument HandFinger.Index.
Signature
bool Oculus.Interaction.Input.DominantHandRef.GetIndexFingerIsPinching()
Returns
bool  Whether or not the index finger is considered to be pinching
GetJointPose ( handJointId , pose )
Attempts to return the world-space pose of the requested hand joint.
Signature
bool Oculus.Interaction.Input.DominantHandRef.GetJointPose(HandJointId handJointId, out Pose pose)
Parameters
handJointId: HandJointId  The joint for which the pose is being requested
pose: out Pose  A valid world-space joint pose if one is available, identity otherwise
Returns
bool  True if the pose argument was populated with a valid joint pose, false otherwise
GetJointPoseFromWrist ( handJointId , pose )
Attempts to return the pose of the requested hand joint in wrist space.
Wrist space is strongly defined as a transform space located and oriented according to HandJointId.HandWristRoot. This space is of uniform scale across hand sizes, meaning all tracked hands are the same size in wrist space, and wrist space itself must be multipled by Scale in order to correctly reflect the observed size of the tracked hands in world space.
Signature
bool Oculus.Interaction.Input.DominantHandRef.GetJointPoseFromWrist(HandJointId handJointId, out Pose pose)
Parameters
handJointId: HandJointId  The joint for which the pose is being requested
pose: out Pose  A valid wrist space joint pose if available, false otherwise
Returns
bool  True if the pose argument was populated with a valid joint pose, false otherwise
GetJointPoseLocal ( handJointId , pose )
Attempts to return the pose of the requested hand joint in "local" space.
This "local" space is loosely defined and can vary by platform (in some implementations, each joint is relative to a given parent joint), so the exact nature of what is returned by this method is not guaranteed. In general, it is recommended to use GetJointPose(HandJointId, out Pose) or GetJointPoseFromWrist(HandJointId, out Pose) instead where possible.
Signature
bool Oculus.Interaction.Input.DominantHandRef.GetJointPoseLocal(HandJointId handJointId, out Pose pose)
Parameters
handJointId: HandJointId  The joint for which the pose is being requested
pose: out Pose  A valid "local" space joint pose if one is available, identity otherwise
Returns
bool  True if the pose argument was populated with a valid joint pose, false otherwise
GetJointPosesFromWrist ( jointPosesFromWrist )
Retrieves all wrist space joint poses for this hand.
The values returned by this method are the same as those returned by calling GetJointPoseFromWrist(HandJointId, out Pose) repeatedly, but as a batched query this method can be more efficient if many joint poses are needed.
Signature
bool Oculus.Interaction.Input.DominantHandRef.GetJointPosesFromWrist(out ReadOnlyHandJointPoses jointPosesFromWrist)
Parameters
jointPosesFromWrist: out ReadOnlyHandJointPoses  The array of all wrist space joint poses if available, or an empty array otherwise
Returns
bool  True if the poses collection was correctly populated, false otherwise
GetJointPosesLocal ( localJointPoses )
Retrieves all "local" space joint poses for this hand.
The values returned by this method are the same as those returned by calling GetJointPoseLocal(HandJointId, out Pose) repeatedly, but as a batched query this method can be more efficient if many joint poses are needed.
Signature
bool Oculus.Interaction.Input.DominantHandRef.GetJointPosesLocal(out ReadOnlyHandJointPoses jointPosesLocal)
Parameters
localJointPoses: out ReadOnlyHandJointPoses  The array of all "local" joint poses if available, or an empty array otherwise
Returns
bool  True if the poses collection was correctly populated, false otherwise
GetPalmPoseLocal ( pose )
Attempts to return the pose of the palm in "local" space.
This "local" space is loosely defined and can vary by platform; in some implementations, it can be considered for this method in particular to be synonymous with wrist space.
Signature
bool Oculus.Interaction.Input.DominantHandRef.GetPalmPoseLocal(out Pose pose)
Parameters
pose: out Pose  The "local" palm position and orientation if available, identity otherwise
Returns
bool  True if the pose argument was populated with a valid palm pose, false otherwise
GetPointerPose ( pose )
Attempts to return a valid "pointer pose" for the hand.
A "pointer pose" is a world-space pose (position and orientation) intended to be used as a directional input, conceptually comparable to "pointing at something." However, the nature of this pose and its relationship to the hand are not part of the contract of this method; it may or may not correspond to a "direction of pointing," and in many implementations it corresponds more closely to a "direction of reaching out." These details can vary, but in all cases this method provides a unified way to query for the semantic concept of a "pointer."
Signature
bool Oculus.Interaction.Input.DominantHandRef.GetPointerPose(out Pose pose)
Parameters
pose: out Pose  A valid world-space pointer pose if one could be calculated, identity otherwise
Returns
bool  True if the pose argument was populated with a valid pointer pose, false otherwise
GetRootPose ( pose )
Attempts to retrieve the pose of the wrist joint in world space.
This is a convenience method and is identical to calling GetJointPose(HandJointId, out Pose) with the argument HandJointId.HandWristRoot.
Signature
bool Oculus.Interaction.Input.DominantHandRef.GetRootPose(out Pose pose)
Parameters
pose: out Pose  A void world space pose for the wrist joint if available, identity otherwise
Returns
bool  True if the pose argument was populated with a valid joint pose, false otherwise
InjectAllDominantHandRef ( leftHand , rightHand )
Signature
void Oculus.Interaction.Input.DominantHandRef.InjectAllDominantHandRef(IHand leftHand, IHand rightHand)
Parameters
leftHand: IHand
rightHand: IHand
Returns
void
InjectLeftHand ( leftHand )
Signature
void Oculus.Interaction.Input.DominantHandRef.InjectLeftHand(IHand leftHand)
Parameters
leftHand: IHand
Returns
void
InjectRightHand ( rightHand )
Signature
void Oculus.Interaction.Input.DominantHandRef.InjectRightHand(IHand rightHand)
Parameters
rightHand: IHand
Returns
void