XRFrame: getJointPose() 方法

可用性有限

此特性不是基線特性,因為它在一些最廣泛使用的瀏覽器中不起作用。

實驗性: 這是一項實驗性技術
在生產中使用此技術之前,請仔細檢查瀏覽器相容性表格

安全上下文: 此功能僅在安全上下文(HTTPS)中可用,且支援此功能的瀏覽器數量有限。

XRFrame 介面的 getJointPose() 方法返回一個 XRJointPose 物件,該物件提供相對於給定基空間的手部關節(參見 XRHand)的姿態。

語法

js
getJointPose(joint, baseSpace)

引數

joint

一個 XRJointSpace,用於指定要獲取 XRJointPose 的手部關節空間,該 XRJointPose 描述了該物品的位置和方向。

baseSpace

一個 XRSpace,用作相對位置和方向的基準或原點。

返回值

一個 XRJointPose 物件,指定手部關節相對於 baseSpace 指示的 XRSpace 的位置和方向。

示例

使用 getJointPose()

使用 XRJointSpaceXRReferenceSpace 呼叫 getJointPose() 以獲取 XRJointPose 物件。

js
navigator.xr
  .requestSession({ optionalFeatures: ["hand-tracking"] })
  .then(/* … */);

function renderFrame(session, frame) {
  // …

  for (const inputSource of session.inputSources) {
    if (inputSource.hand) {
      const indexFingerTipJoint = inputSource.hand.get("index-finger-tip");
      frame.getJointPose(indexFingerTipJoint, referenceSpace); // XRJointPose
    }
  }
}

規範

規範
WebXR Hand Input 模組 - Level 1
# dom-xrframe-getjointpose

瀏覽器相容性

另見