XRTransientInputHitTestResult
Ограниченная доступность
Эта функция не является базовой, так как она не работает в некоторых из наиболее широко используемых браузеров.
Безопасный контекст: Эта функция доступна только в безопасных контекстах (HTTPS) в некоторых или во всех поддерживающих браузерах.
Экспериментальная: Это экспериментальная технология
Перед использованием в производстве внимательно проверьте таблицу совместимости с браузерами.
Интерфейс XRTransientInputHitTestResult API устройства WebXR содержит массив результатов тестирования попадания для транзиентного ввода, сгруппированные по источнику ввода.
Вы можете получить массив XRHitTestResult объектов для кадра, вызвав XRFrame.getHitTestResultsForTransientInput().
Свойства экземпляра
-
XRTransientInputHitTestResult.inputSourceТолько для чтения Экспериментальная -
Представляет
XRInputSource, который использовался для вычисления массиваresults. -
XRTransientInputHitTestResult.resultsТолько для чтения Экспериментальная -
Представляет массив объектов
XRHitTestResult, содержащих результаты тестирования попадания для источника ввода, отсортированные по расстоянию по лучу, используемому для выполнения тестирования попадания, с ближайшим результатом в позиции 0.
Методы экземпляра
Нет.
Примеры
Получение результатов тестирования попадания транзиентного ввода
Для доступа к результатам тестирования попадания транзиентного ввода используются два массива. Во-первых, вы получаете массив XRTransientInputHitTestResult объектов, вызвав XRFrame.getHitTestResultsForTransientInput(). Во-вторых, для получения фактических объектов XRHitTestResult для источника ввода, вы ссылаетесь на свойство results одного из объектов XRTransientInputHitTestResult.
// frame loop
function onXRFrame(time, xrFrame) {
let hitTestResults = xrFrame.getHitTestResultsForTransientInput(
transientHitTestSource,
);
hitTestResults.forEach((resultsPerInputSource) => {
resultsPerInputSource.results.forEach((hitTest) => {
// do something with the hit test
hitTest.getPose(referenceSpace);
});
});
}
Фильтрация источников ввода
Свойство inputSource позволяет фильтровать результаты тестирования попадания по источнику ввода.
// frame loop
function onXRFrame(time, xrFrame) {
let hitTestResults = xrFrame.getHitTestResultsForTransientInput(
transientHitTestSource,
);
hitTestResults.forEach((resultsPerInputSource) => {
if (resultsPerInputSource.inputSource === myPreferredInputSource) {
// act on hit test results from the preferred input source
}
});
}
Спецификации
Совместимость с браузерами
| Рабочий стол | Мобильный | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на iOS | Samsung Internet | WebView Android | |
XRTransientInputHitTestResult |
81 | 81 | Нет | 68 | Нет | 81 | Нет | 58 | Нет | 13.0 | Нет |
inputSource |
81 | 81 | Нет | 68 | Нет | 81 | Нет | 58 | Нет | 13.0 | Нет |
results |
81 | 81 | Нет | 68 | Нет | 81 | Нет | 58 | Нет | 13.0 | Нет |
См. также
© 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/XRTransientInputHitTestResult