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 XRInputSource.hand.
Properties
sizeRead only-
Returns
25, the size of the pair iterator.
Methods
The XRhand object is a pair iterator. It can directly be used in a for...of structure. for (let joint of myHand) is equivalent to for (let 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()-
Returns an iterator with the hand joints/
XRJointSpacepairs for each element. SeeMap.prototype.entries()for more details. forEach()-
Runs a provided function once per each hand joint/
XRJointSpacepair. SeeMap.prototype.forEach()for more details. get()-
Returns a
XRJointSpacefor a given hand joint orundefinedif no such hand joint key is in the map. SeeMap.prototype.get()for more details. keys()-
Returns an iterator with all the hand joint keys. See
Map.prototype.keys()for more details. values()-
Returns an iterator with all the
XRJointSpacevalues. SeeMap.prototype.values()for more details.
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
let wristJoint = inputSource.hand.get("wrist");
let indexFingerTipJoint = inputSource.hand.get("index-finger-tip");
for (let [joint, jointSpace] of inputSource.hand) {
console.log(joint);
console.log(jointSpace);
}
Specifications
No specification found
No specification data found for api.XRHand.
Check for problems with this page or contribute a missing spec_url to mdn/browser-compat-data. Also make sure the specification is included in w3c/browser-specs.
Browser compatibility
No compatibility data found for api.XRHand.
Check for problems with this page or contribute missing data to mdn/browser-compat-data.