The DOMPointReadOnly interface specifies the coordinate and perspective fields used by DOMPoint to define a 2D or 3D point in a coordinate system.
Note: This feature is available in Web Workers.
There are two ways to create a new DOMPointReadOnly instance. First, you can use its constructor, passing in the values of the parameters for each dimension and, optionally, the perspective:
/* 2D */ var point = new DOMPointReadOnly(50, 50); /* 3D */ var point = new DOMPointReadOnly(50, 50, 25); /* 3D with perspective */ var point = new DOMPointReadOnly(100, 100, 100, 1.0);
The other option is to use the static DOMPointReadOnly.fromPoint() method:
var point = DOMPointReadOnly.fromPoint({x: 100, y: 100, z: 50; w: 1.0});
Constructor
DOMPointReadOnly()- Creates a new
DOMPointReadOnlyobject given the values of its coordinates and perspective. To create a point using aDOMPointInitobject, you can instead useDOMPointReadOnly.fromPoint().
Properties
DOMPointReadOnly.xRead only- The point's horizontal coordinate,
x. DOMPointReadOnly.yRead only- The point's vertical coordinate,
y. DOMPointReadOnly.zRead only- The point's depth coordinate,
z. DOMPointReadOnly.wRead only- The point's perspective value,
w.
-
Static methods
DOMPointReadOnly.fromPoint()- A static method that creates a new
DOMPointReadOnlyobject given the coordinates provided in the specifiedDOMPointInitobject.
Methods
matrixTransform()- Applies a matrix transform specified as a
DOMMatrixInitobject to theDOMPointReadOnlyobject. toJSON()- Returns a JSON representation of the
DOMPointReadOnlyobject.
Specifications
| Specification | Status | Comment |
|---|---|---|
| Geometry Interfaces Module Level 1 The definition of 'DOMPoint' in that specification. |
Candidate Recommendation | Latest spec version is an ED. |
Browser compatibility
The compatibility table on this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
Update compatibility data on GitHub
| Desktop | Mobile | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
DOMPointReadOnly | Chrome Full support 61 | Edge No support No | Firefox Full support 31 | IE No support No | Opera Full support 48 | Safari Full support 10.1 | WebView Android Full support 61 | Chrome Android Full support 61 | Edge Mobile No support No | Firefox Android Full support 31 | Opera Android Full support 48 | Safari iOS Full support 10.1 | Samsung Internet Android ? |
DOMPointReadOnly() constructor | Chrome Full support 61 | Edge No support No | Firefox Full support 31 | IE No support No | Opera Full support 48 | Safari Full support 10.1 | WebView Android Full support 61 | Chrome Android Full support 61 | Edge Mobile No support No | Firefox Android Full support 31 | Opera Android Full support 48 | Safari iOS Full support 10.1 | Samsung Internet Android ? |
x | Chrome Full support 61 | Edge No support No | Firefox Full support 31 | IE No support No | Opera Full support 48 | Safari Full support 10.1 | WebView Android Full support 61 | Chrome Android Full support 61 | Edge Mobile No support No | Firefox Android Full support 31 | Opera Android Full support 48 | Safari iOS Full support 10.1 | Samsung Internet Android ? |
y | Chrome Full support 61 | Edge No support No | Firefox Full support 31 | IE No support No | Opera Full support 48 | Safari Full support 10.1 | WebView Android Full support 61 | Chrome Android Full support 61 | Edge Mobile No support No | Firefox Android Full support 31 | Opera Android Full support 48 | Safari iOS Full support 10.1 | Samsung Internet Android ? |
z | Chrome Full support 61 | Edge No support No | Firefox Full support 31 | IE No support No | Opera Full support 48 | Safari Full support 10.1 | WebView Android Full support 61 | Chrome Android Full support 61 | Edge Mobile No support No | Firefox Android Full support 31 | Opera Android Full support 48 | Safari iOS Full support 10.1 | Samsung Internet Android ? |
w | Chrome Full support 61 | Edge No support No | Firefox Full support 31 | IE No support No | Opera Full support 48 | Safari Full support 10.1 | WebView Android Full support 61 | Chrome Android Full support 61 | Edge Mobile No support No | Firefox Android Full support 31 | Opera Android Full support 48 | Safari iOS Full support 10.1 | Samsung Internet Android ? |
fromPoint | Chrome Full support 61 | Edge No support No | Firefox Full support 31 | IE No support No | Opera Full support 48 | Safari Full support 10.1 | WebView Android Full support 61 | Chrome Android Full support 61 | Edge Mobile No support No | Firefox Android Full support 31 | Opera Android Full support 48 | Safari iOS Full support 10.1 | Samsung Internet Android ? |
matrixTransform | Chrome Full support 61 | Edge No support No | Firefox Full support 31 | IE No support No | Opera Full support 48 | Safari Full support 10.1 | WebView Android Full support 61 | Chrome Android Full support 61 | Edge Mobile No support No | Firefox Android Full support 31 | Opera Android Full support 48 | Safari iOS Full support 10.1 | Samsung Internet Android ? |
toJSON | Chrome Full support 61 | Edge No support No | Firefox Full support 31 | IE No support No | Opera Full support 48 | Safari Full support 10.1 | WebView Android Full support 61 | Chrome Android Full support 61 | Edge Mobile No support No | Firefox Android Full support 31 | Opera Android Full support 48 | Safari iOS Full support 10.1 | Samsung Internet Android ? |
Legend
- Full support
- Full support
- No support
- No support
- Compatibility unknown
- Compatibility unknown
- Deprecated. Not for use in new websites.
- Deprecated. Not for use in new websites.

