DOMPoint

一个DOMPoint对象表示坐标系中的二维或三维点;它包括最多三个维度中坐标的值,以及一个可选的透视值。DOMPoint基于DOMPointReadOnly,但允许更改其属性的值。

通常,正x分量表示原点右侧的位置,正y分量表示原点下方的位置,正z分量表示从屏幕向外延伸(换句话说,朝向用户)。

DOMPointReadOnly DOMPoint

构造函数

DOMPoint()

根据其零个或多个坐标分量的值以及可选的w透视值创建并返回一个新的DOMPoint对象。您还可以使用现有的DOMPointDOMPointReadOnly或对象通过调用DOMPoint.fromPoint()静态方法来创建一个新点。

实例属性

DOMPoint还可以继承其父级DOMPointReadOnly的属性。

DOMPoint.x

DOMPointx坐标。

DOMPoint.y

DOMPointy坐标。

DOMPoint.z

DOMPointz坐标。

DOMPoint.w

DOMPoint的透视值。

实例方法

DOMPoint从其父级DOMPointReadOnly继承实例方法。

静态方法

DOMPoint还可以继承其父级DOMPointReadOnly的静态方法。

DOMPoint.fromPoint()

根据现有点(或包含匹配属性的对象)创建一个新的可变DOMPoint对象,该对象提供其属性的值。

示例

WebXR 设备 API中,DOMPointReadOnly值表示位置和方向。在以下代码片段中,可以通过在XRSession动画帧期间使用XRFrame.getViewerPose()调用来检索 XR 设备(例如 VR 头显或具有 AR 功能的手机)的姿态,然后访问结果XRPosetransform属性,该属性包含两个DOMPointReadOnly属性:position作为向量和orientation作为四元数。

js
function onXRFrame(time, xrFrame) {
  let viewerPose = xrFrame.getViewerPose(xrReferenceSpace);

  if (viewerPose) {
    let position = viewerPose.transform.position;
    let orientation = viewerPose.transform.orientation;

    console.log(
      `XR Viewer Position: {x: ${roundToTwo(position.x)}, y: ${roundToTwo(
        position.y,
      )}, z: ${roundToTwo(position.z)}`,
    );

    console.log(
      `XR Viewer Orientation: {x: ${roundToTwo(orientation.x)}, y: ${roundToTwo(
        orientation.y,
      )}, z: ${roundToTwo(orientation.z)}, w: ${roundToTwo(orientation.w)}`,
    );
  }
}

规范

规范
几何接口模块级别 1
# DOMPoint

浏览器兼容性

BCD 表格仅在启用 JavaScript 的浏览器中加载。

另请参阅