Spec-Zone.ru › Web APIs

XRInputSourceEvent

Ограниченное использование

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

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

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

Интерфейс XRInputSourceEvent API WebXR Device описывает событие, произошедшее на устройстве ввода пользователя WebXR, например, контроллере руки, системе отслеживания взгляда или системе отслеживания движения. Более конкретно, они представляют собой изменение состояния XRInputSource.

Чтобы узнать больше о обработке ввода в проекте WebXR, см. статью Ввод и источники ввода.

Событие XRInputSourceEvent

Конструктор

XRInputSourceEvent()

Создаёт и возвращает новый объект XRInputSourceEvent с свойствами, соответствующими значениям в предоставленном словаре eventInitDict.

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

frame Только для чтения

Объект XRFrame, предоставляющий необходимую информацию о кадре события во время его возникновения. Этот кадр мог быть рендерен в прошлом, а не в текущем. Поскольку это кадр события, а не кадр анимации, вы не можете вызвать метод XRFrame getViewerPose() для него; используйте вместо этого getPose().

inputSource Только для чтения

Объект XRInputSource, указывающий, какой источник ввода сгенерировал событие ввода.

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

Интерфейс XRInputSourceEvent не определяет никаких методов; однако несколько методов унаследованы от родительского интерфейса Event.

Типы событий

select

Отправляется в XRSession, когда отправляющий источник ввода полностью завершил основное действие.

selectend

Отправляется в XRSession, когда текущее основное действие заканчивается или когда источник ввода с текущим основным действием отключён от системы.

selectstart

Отправляется в XRSession, когда источник ввода начинает своё основное действие, указывая, что пользователь начал ввод типа команды, например, нажатие на спусковой крючок или кнопку, произнесение голосового команды, нажатие на сенсорную панель и т. п.

squeeze

Отправляется в XRSession, когда отправляющий источник ввода полностью завершил основное действие сжатия.

squeezeend

Отправляется в XRSession, когда текущее основное действие сжатия заканчивается или когда источник ввода с текущим основным действием сжатия отключён.

squeezestart

Отправляется в XRSession, когда источник ввода начинает своё основное действие сжатия, указывая, что пользователь начал сжимать или захватывать контроллер.

Примеры

Код ниже устанавливает обработчики для событий основного действия, чтобы определить, когда пользователь нажимает на объекты в сцене.

xrSession.addEventListener("select", (event) => {
  let targetRayPose = event.frame.getPose(
    event.inputSource.targetRaySpace,
    myRefSpace,
  );

  if (targetRayPose) {
    let hit = myHitTest(targetRayPose.transform);
    if (hit) {
      /* handle the hit */
    }
  }
});

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

Спецификация
WebXR Device API
# xrinputsourceevent-interface

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

Рабочий стол Мобильные устройства
Chrome Edge Firefox Opera Safari Chrome Android Firefox для Android Opera Android Safari на iOS Samsung Internet WebView Android
XRInputSourceEvent 79 79 Нет 66 Нет 79 Нет 57 Нет 11.2 Нет
XRInputSourceEvent 79 79 Нет 66 Нет 79 Нет 57 Нет 11.2 Нет
frame 79 79 Нет 66 Нет 79 Нет 57 Нет 11.2 Нет
inputSource 79 79 Нет 66 Нет 79 Нет 57 Нет 11.2 Нет

© 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/XRInputSourceEvent

Spec-Zone.ru

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