XRRigidTransform
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Secure context: This feature is available only in secure contexts (HTTPS), in some or all supporting browsers.
XRRigidTransform là một giao diện của WebXR API đại diện cho phép biến đổi hình học 3D được mô tả bởi vị trí và hướng.
XRRigidTransform được sử dụng để chỉ định các phép biến đổi trong toàn bộ WebXR API, bao gồm:
- Độ lệch và hướng tương đối với không gian tham chiếu cha để sử dụng khi tạo một không gian tham chiếu mới với
getOffsetReferenceSpace(). transformcủa mộtXRView.transformcủa mộtXRPose.- Thuộc tính
transformcủa sự kiệnXRReferenceSpaceEvent, như được tìm thấy trong sự kiệnresetđược nhận bởi mộtXRReferenceSpace.
Sử dụng XRRigidTransform ở những nơi này thay vì các mảng thô cung cấp dữ liệu ma trận có một lợi thế. Nó tự động tính toán nghịch đảo của phép biến đổi và thậm chí lưu vào bộ nhớ đệm, làm cho các yêu cầu tiếp theo nhanh hơn đáng kể.
Hàm khởi tạo
XRRigidTransform()-
Tạo một đối tượng
XRRigidTransformmới đại diện cho phép biến đổi áp dụng vị trí và/hoặc hướng được chỉ định.
Thuộc tính phiên bản
XRRigidTransform.positionRead only-
Một
DOMPointReadOnlychỉ định một điểm 3 chiều, tính bằng mét, mô tả thành phần dịch chuyển của phép biến đổi. Thuộc tínhwluôn là1.0. XRRigidTransform.orientationRead only-
Một
DOMPointReadOnlychứa một quaternion đơn vị mô tả thành phần quay của phép biến đổi. Là một quaternion đơn vị, độ dài của nó luôn được chuẩn hóa về1.0. XRRigidTransform.matrixRead only-
Trả về ma trận biến đổi dưới dạng một
Float32Arraygồm 16 phần tử. Xem phần Định dạng ma trận để biết cách mảng được sử dụng để biểu diễn ma trận. XRRigidTransform.inverseRead only-
Trả về một
XRRigidTransformlà nghịch đảo của phép biến đổi này. Tức là, nếu áp dụng cho một đối tượng đã được biến đổi trước đó bởi phép biến đổi gốc, nó sẽ hoàn tác phép biến đổi và trả về đối tượng gốc.
Ghi chú sử dụng
Khi một XRRigidTransform được diễn giải, hướng luôn được áp dụng cho đối tượng bị ảnh hưởng trước khi vị trí được áp dụng.
Ví dụ
Đoạn mã này tạo một XRRigidTransform để chỉ định độ lệch và hướng so với không gian tham chiếu hiện tại để sử dụng khi tạo một không gian tham chiếu mới. Sau đó nó yêu cầu callback khung hình động đầu tiên bằng cách gọi phương thức requestAnimationFrame() của phiên.
xrSession.requestReferenceSpace(refSpaceType).then((refSpace) => {
xrReferenceSpace = refSpace;
xrReferenceSpace = xrReferenceSpace.getOffsetReferenceSpace(
new XRRigidTransform(viewerStartPosition, cubeOrientation),
);
animationFrameRequestID = xrSession.requestAnimationFrame(drawFrame);
});
Thông số kỹ thuật
| Specification |
|---|
| WebXR Device API> # xrrigidtransform-interface> |