XRRigidTransform
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
XRRigidTransform
は、位置と向きによって記述される 3D 幾何学的変換を表す WebXR API のインターフェイスです。
XRRigidTransform
は、以下を含む WebXR API 全体で変換を指定するために使用されます。
getOffsetReferenceSpace()
を使用して新しい参照空間を作成するときに使用する、親参照空間を基準にしたオフセットと向き。XRView
のtransform
。XRPose
のtransform
。XRReferenceSpace
が受信したreset
イベントにあるXRReferenceSpaceEvent
イベントのtransform
プロパティ。
行列データを提供する裸の配列ではなく、これらの場所で XRRigidTransform
を使用する利点は、XRRigidTransform
が変換の逆の計算などを自動的に実行することです。 さらに良いことに、一度計算したらキャッシュされるため、後続の要求は大幅に高速化されます。
コンストラクター
new XRRigidTransform()
-
指定された位置や向きを適用する変換を表す新しい
XRRigidTransform
オブジェクトを作成します。
プロパティ
XRRigidTransform.position
読取専用 Experimental-
変換の平行移動成分を記述する、メートルで表される 3 次元の点を指定する
DOMPointReadOnly
。w
プロパティは常に1.0
です。 XRRigidTransform.orientation
読取専用 Experimental-
変換の回転成分を記述する単位クォータニオンを含む
DOMPointReadOnly
。 単位クォータニオンとして、その長さは常に1.0
に正規化されます。 XRRigidTransform.matrix
読取専用 Experimental-
16 メンバーの
Float32Array
の形式で変換行列を返します。 配列を使用して行列を表す方法については、行列のフォーマットのセクションを参照してください。
XRRigidTransform.inverse
読取専用 Experimental-
この変換の逆である
XRRigidTransform
を返します。 つまり、元の変換によって以前に変換されたオブジェクトに適用された場合、変換が元に戻され、元のオブジェクトが返されます。
使用上の注意
XRRigidTransform
が解釈されると、位置が適用される前に、影響を受けるオブジェクトに常に向きが適用されます。
例
このコードスニペットは、XRRigidTransform
を作成して、新しい参照空間を作成するときに使用する現在の参照空間に対するオフセットと向きを指定します。 次に、セッションの requestAnimationFrame()
メソッドを呼び出して、最初のアニメーションフレームコールバックを要求します。
xrSession.requestReferenceSpace(refSpaceType)
.then((refSpace) => {
xrReferenceSpace = refSpace;
xrReferenceSpace = xrReferenceSpace.getOffsetReferenceSpace(
new XRRigidTransform(viewerStartPosition, cubeOrientation));
animationFrameRequestID = xrSession.requestAnimationFrame(drawFrame);
仕様
Specification |
---|
WebXR Device API # xrrigidtransform-interface |
ブラウザーの互換性
BCD tables only load in the browser