Spec-Zone.ru › Web APIs

XRRay

Ограниченная доступность

Эта функция не является базовой, так как она не работает во всех широко используемых браузерах.

  • Узнать больше
  • Полная совместимость
  • Отправить отзыв

Безопасный контекст: Эта функция доступна только в безопасных контекстах (HTTPS) в некоторых или во всех поддерживающих браузерах.

Экспериментальная: Это экспериментальная технология
Перед использованием в продуктивной среде внимательно изучите таблицу совместимости браузеров.

Интерфейс XRRay API WebXR Device представляет собой геометрический луч, описываемый точкой начала и вектором направления.

Объекты XRRay могут быть переданы в XRSession.requestHitTestSource() или XRSession.requestHitTestSourceForTransientInput() для выполнения проверки попадания.

Конструктор

XRRay() Экспериментальная

Создает новый объект XRRay.

Свойства экземпляра

XRRay.direction Только для чтения Экспериментальная

Объект DOMPointReadOnly, представляющий 3-мерный направляющий вектор луча.

XRRay.matrix Только для чтения Экспериментальная

Преобразование, которое можно использовать для позиционирования объектов вдоль XRRay. Это матрица 4x4, представленная в виде массива Float32Array из 16 элементов в порядке следования столбцов.

XRRay.origin Только для чтения Экспериментальная

Объект DOMPointReadOnly, представляющий 3-мерную точку в пространстве, из которой исходит луч, в метрах.

Методы экземпляра

Нет.

Примеры

Использование XRRay для запроса источника проверки попадания

Метод XRSession.requestHitTestSource() принимает объект XRRay в качестве опции offsetRay. В этом примере источник проверки попадания расположен немного выше зрителя, так как в приложении есть некоторые элементы пользовательского интерфейса в нижней части, при этом сохраняется представление о центральном курсоре.

const xrSession = navigator.xr.requestSession("immersive-ar", {
  requiredFeatures: ["local", "hit-test"],
});

let hitTestSource = null;

xrSession
  .requestHitTestSource({
    space: viewerSpace, // obtained from xrSession.requestReferenceSpace("viewer");
    offsetRay: new XRRay({ y: 0.5 }),
  })
  .then((viewerHitTestSource) => {
    hitTestSource = viewerHitTestSource;
  });

Спецификации

Спецификация
Модуль проверки попадания WebXR
# xrray-interface

Совместимость браузеров

Рабочий стол Мобильные устройства
Chrome Edge Firefox Opera Safari Chrome Android Firefox для Android Opera Android Safari на IOS Samsung Internet WebView Android
XRRay 81 81 Нет 68 Нет 81 Нет 58 Нет 13.0 Нет
XRRay 81 81 Нет 68 Нет 81 Нет 58 Нет 13.0 Нет
direction 81 81 Нет 68 Нет 81 Нет 58 Нет 13.0 Нет
matrix 81 81 Нет 68 Нет 81 Нет 58 Нет 13.0 Нет
origin 81 81 Нет 68 Нет 81 Нет 58 Нет 13.0 Нет

См. также

  • XRSession.requestHitTestSource()
  • XRHitTestResult

© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/XRRay

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API