• geoscene/views

GamepadInputDevice

AMD: require(["geoscene/views/input/gamepad/GamepadInputDevice"], (GamepadInputDevice) => { /* code goes here */ });
ESM: import GamepadInputDevice from "@geoscene/core/views/input/gamepad/GamepadInputDevice";
类: geoscene/views/input/gamepad/GamepadInputDevice
继承于:GamepadInputDevice Accessor
起始版本:GeoScene Maps SDK for JavaScript 4.9

手柄的属性和配置。

目前支持两种类型的设备:标准手柄3Dconnexion 设备

标准手柄将具有按钮和轴的标准化 mappings,例如 Xbox360 控制器DualShock 4 控制器 (PlayStation 4 控制器)。要了解有关您设备的更多信息,并测试其与某些浏览器的连接,请参阅 HTML5 手柄测试器

Gamepad 的 W3C 标准仍处于草稿状态。因此,支持仅限于浏览器和操作系统的子集。我们尚未测试每个浏览器/操作系统组合,但作为一般指南,我们通过以下配对获得了可靠的结果:

浏览器 Windows Mac
Chrome XBox360
XBox One
3DConnexion Devices
PS4 Controller
XBox360
XBox One
3DConnexion Devices
PS4 Controller
Firefox XBox360
XBox One
没有手柄设备支持此浏览器/操作系统组合
Edge (17 及以上) XBox360
XBox One
此操作系统不支持此浏览器
Safari 此操作系统不支持此浏览器 没有手柄设备支持此浏览器/操作系统组合

注意:

  • 连接设备后,您可能需要重新启动浏览器。
  • 根据 W3C 工作草案 2020 年 10 月 29 日,如果 web 应用程序托管在不安全的环境 (例如 http 而非 https) 上,则手柄功能可能无法在部分或全部浏览器上使用。GeoScene Maps SDK for JavaScript 的未来版本可能会在不安全的上下文中显式禁用手柄功能。

属性概述

可以设置、检索或侦听任何属性。请参阅使用属性主题。
显示继承属性 隐藏继承属性
名称 类型 描述
String

类的名称。

更多详情
Accessor
手柄

浏览器公开的本机 Gamepad 对象。

更多详情
GamepadInputDevice

属性详细信息

declaredClass Stringreadonly inherited

类的名称。声明的类名称格式化为 geoscene.folder.className

native Gamepadreadonly

浏览器公开的本机 Gamepad 对象。

方法概述

显示继承的方法 隐藏继承的方法
名称 返回值类值 描述

添加一个或多个与对象的生命周期相关联的句柄。

更多详情
Accessor
Boolean

如果存在指定的句柄组,则返回 true。

更多详情
Accessor

移除对象拥有的句柄组。

更多详情
Accessor

方法详细说明

addHandles(handleOrHandles, groupKey)inherited
起始版本:GeoScene Maps SDK for JavaScript 4.25

添加一个或多个与对象的生命周期相关联的句柄。当对象被销毁时,将移除句柄。

// Manually manage handles
const handle = reactiveUtils.when(
  () => !view.updating,
  () => {
    wkidSelect.disabled = false;
  },
  { once: true }
);

// Handle gets removed when the object is destroyed.
this.addHandles(handle);
参数
handleOrHandles WatchHandle|WatchHandle[]

对象销毁后,标记为要移除的句柄。

groupKey *
optional

标识句柄应添加到的组的键。组中的所有句柄稍后都可使用 Accessor.removeHandles() 进行删除。如果未提供键,则句柄将被添加到默认组。

hasHandles(groupKey){Boolean}inherited
起始版本:GeoScene Maps SDK for JavaScript 4.25

如果存在指定的句柄组,则返回 true。

参数
groupKey *
optional

组键。

返回
类型 描述
Boolean 如果存在指定的句柄组,则返回 true
示例
// Remove a named group of handles if they exist.
if (obj.hasHandles("watch-view-updates")) {
  obj.removeHandles("watch-view-updates");
}
removeHandles(groupKey)inherited
起始版本:GeoScene Maps SDK for JavaScript 4.25

移除对象拥有的句柄组。

参数
groupKey *
optional

要移除的组键或组键的数组或集合。

示例
obj.removeHandles(); // removes handles from default group

obj.removeHandles("handle-group");
obj.removeHandles("other-handle-group");

您的浏览器不再受支持。请升级您的浏览器以获得最佳体验。请参阅浏览器弃用帖子以获取更多信息