XRHand
XRHand
接口是一个键值对迭代器(有序映射),其中键是手部关节,值是 XRJointSpace
。
XRHand
由 XRInputSource.hand
返回。
实例属性
size
只读 实验性-
返回
25
,即键值对迭代器的长度。
实例方法
XRhand
对象是一个键值对迭代器。它可以直接在 for...of
结构中使用。for (const joint of myHand)
等效于 for (const joint of myHand.entries())
。但是,它不是类似映射的对象,因此您没有 clear()
、delete()
、has()
和 set()
方法。
entries()
实验性-
返回一个迭代器,其中包含每个元素的手部关节 /
XRJointSpace
对。有关更多详细信息,请参阅Map.prototype.entries()
。 forEach()
实验性-
为每个手部关节 /
XRJointSpace
对运行提供的函数一次。有关更多详细信息,请参阅Map.prototype.forEach()
。 get()
实验性-
为给定的手部关节返回一个
XRJointSpace
,如果映射中不存在这样的手部关节键,则返回undefined
。有关更多详细信息,请参阅Map.prototype.get()
。 keys()
实验性-
返回一个包含所有手部关节键的迭代器。有关更多详细信息,请参阅
Map.prototype.keys()
。 values()
实验性-
返回一个包含所有
XRJointSpace
值的迭代器。有关更多详细信息,请参阅Map.prototype.values()
。
手部关节
XRHand
对象包含以下手部关节
手部关节 | 索引 |
---|---|
腕部 | 0 |
拇指掌骨 | 1 |
拇指近节指骨 | 2 |
拇指中节指骨 | 3 |
拇指末节指骨 | 4 |
食指掌骨 | 5 |
食指近节指骨 | 6 |
食指中节指骨 | 7 |
食指远节指骨 | 8 |
食指指尖 | 9 |
中指掌骨 | 10 |
中指近节指骨 | 11 |
中指中节指骨 | 12 |
中指远节指骨 | 13 |
中指指尖 | 14 |
无名指掌骨 | 15 |
无名指近节指骨 | 16 |
无名指中节指骨 | 17 |
无名指远节指骨 | 18 |
无名指指尖 | 19 |
小指掌骨 | 20 |
小指近节指骨 | 21 |
小指中节指骨 | 22 |
小指远节指骨 | 23 |
小指指尖 | 24 |
示例
使用 XRHand
对象
js
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);
}
规范
规范 |
---|
WebXR 手部输入模块 - 第 1 级 # xrhand-interface |
浏览器兼容性
BCD 表格仅在启用 JavaScript 的浏览器中加载。