web api interface
XRHand
The XRHand interface is pair iterator (an ordered map) with the key being the hand joints and the value being an XRJointSpace.
XRHand is returned by hand.
Instance properties
sizeRead only Experimental- : Returns
25, the size of the pair iterator.
- : Returns
Instance methods
The XRHand object is a pair iterator. It can directly be used in a for...of structure. for (const joint of myHand) is equivalent to for (const joint of myHand.entries()).
However, it’s not a map-like object, so you don’t have the clear(), delete(), has(), and set() methods.
entries()Experimental- : Returns an iterator with the hand joints/
XRJointSpacepairs for each element. Seeentries()for more details.
- : Returns an iterator with the hand joints/
forEach()Experimental- : Runs a provided function once per each hand joint/
XRJointSpacepair. SeeforEach()for more details.
- : Runs a provided function once per each hand joint/
get()Experimental- : Returns a
XRJointSpacefor a given hand joint orundefinedif no such hand joint key is in the map. Seeget()for more details.
- : Returns a
keys()Experimental- : Returns an iterator with all the hand joint keys.
See
keys()for more details.
- : Returns an iterator with all the hand joint keys.
See
values()Experimental- : Returns an iterator with all the
XRJointSpacevalues. Seevalues()for more details.
- : Returns an iterator with all the
Hand joints
The XRHand object contains the following hand joints:
| Hand joint | Index |
|---|---|
| wrist | 0 |
| thumb-metacarpal | 1 |
| thumb-phalanx-proximal | 2 |
| thumb-phalanx-distal | 3 |
| thumb-tip | 4 |
| index-finger-metacarpal | 5 |
| index-finger-phalanx-proximal | 6 |
| index-finger-phalanx-intermediate | 7 |
| index-finger-phalanx-distal | 8 |
| index-finger-tip | 9 |
| middle-finger-metacarpal | 10 |
| middle-finger-phalanx-proximal | 11 |
| middle-finger-phalanx-intermediate | 12 |
| middle-finger-phalanx-distal | 13 |
| middle-finger-tip | 14 |
| ring-finger-metacarpal | 15 |
| ring-finger-phalanx-proximal | 16 |
| ring-finger-phalanx-intermediate | 17 |
| ring-finger-phalanx-distal | 18 |
| ring-finger-tip | 19 |
| pinky-finger-metacarpal | 20 |
| pinky-finger-phalanx-proximal | 21 |
| pinky-finger-phalanx-intermediate | 22 |
| pinky-finger-phalanx-distal | 23 |
| pinky-finger-tip | 24 |
Examples
Using XRHand objects
const wristJoint = inputSource.hand.get("wrist");
const indexFingerTipJoint = inputSource.hand.get("index-finger-tip");
for (const [joint, jointSpace] of inputSource.hand) {
console.log(joint);
console.log(jointSpace);
}
Specifications
SpecificationsStandards references are available on the canonical MDN page.
Browser compatibility
Browser compatibilityCompatibility data is available on the canonical MDN page.