DOMPoint - Web APIs 编辑
A DOMPoint
object represents a 2D or 3D point in a coordinate system; it includes values for the coordinates in up to three dimensions, as well as an optional perspective value. DOMPoint
is based on DOMPointReadOnly
but allows its properties' values to be changed.
In general, a positive x
component represents a position to the right of the origin, a positive y
component is downward from the origin, and a positive z
component extends outward from the screen (in other words, toward the user).
Constructor
DOMPoint()
- Creates and returns a new
DOMPoint
object given the values of zero or more of its coordinate components and optionally thew
perspective value. You can also use an existingDOMPoint
orDOMPointReadOnly
or aDOMPointInit
dictionary to create a new point by calling theDOMPoint.fromPoint()
static method.
Methods
DOMPoint
inherits methods from its parent, DOMPointReadOnly
.
Static methods
DOMPoint.fromPoint()
- Creates a new mutable
DOMPoint
object given an existing point (or aDOMPointInit
dictionary) which provides the values for its properties.
Properties
DOMPoint
inherits properties from its parent, DOMPointReadOnly
.
DOMPoint.x
- The
x
coordinate of theDOMPoint
. DOMPoint.y
- The
y
coordinate of theDOMPoint
. DOMPoint.z
- The
z
coordinate of theDOMPoint
. DOMPoint.w
- The perspective value of the
DOMPoint
.
Examples
In the WebXR Device API, DOMPointReadOnly
values are used to represent positions and orientations. In the following snippet, the pose of the XR device (such as a VR headset or phone with AR capabilities) can be retrieved by calling using XRFrame.getViewerPose()
during an XRSession
animation frame, then accessing the resulting XRPose
's transform
property, which contains two DOMPointReadOnly
attributes: position
as a vector and orientation
as a quaternion.
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));
}
}
Specifications
Specification | Status | Comment |
---|---|---|
Geometry Interfaces Module Level 1 The definition of 'DOMPoint' in that specification. | Candidate Recommendation |
Browser compatibility
BCD tables only load in the browser
See also
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论