This feature is well established and works across many devices and browser versions. It’s been available across browsers since January 2020.
Note: This feature is available in Web Workers.
A DOMQuad is a collection of four DOMPoints defining the corners of an arbitrary quadrilateral. Returning DOMQuads lets getBoxQuads() return accurate information even when arbitrary 2D or 3D transforms are present. It has a handy bounds attribute returning a DOMRectReadOnly for those cases where you just want an axis-aligned bounding rectangle.
DOMQuad()Creates a new DOMQuad object.
DOMQuad.p1 Read only
A DOMPoint representing one corner of the DOMQuad.
DOMQuad.p2 Read only
A DOMPoint representing one corner of the DOMQuad.
DOMQuad.p3 Read only
A DOMPoint representing one corner of the DOMQuad.
DOMQuad.p4 Read only
A DOMPoint representing one corner of the DOMQuad.
DOMQuad.getBounds()Returns a DOMRect object with the coordinates and dimensions of the DOMQuad object.
DOMQuad.toJSON()Returns a JSON representation of the DOMQuad object.
DOMQuad.fromRect()Returns a new DOMQuad object based on the passed set of coordinates.
DOMQuad.fromQuad()Returns a new DOMQuad object or a set of quadrilateral coordinates based on the provided input.
| Specification |
|---|
| Geometry Interfaces Module Level 1> # DOMQuad> |
| Desktop | Mobile | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | WebView Android | WebView on iOS | |
DOMQuad |
61 | 79 | 31 | 48 | 11 | 61 | 31 | 45 | 11 | 8.0 | 61 | 11 |
DOMQuad |
61 | 79 | 31 | 48 | 11 | 61 | 31 | 45 | 11 | 8.0 | 61 | 11 |
fromQuad_static |
61 | 79 | 69 | 48 | 11 | 61 | 79 | 45 | 11 | 8.0 | 61 | 11 |
fromRect_static |
61 | 79 | 69 | 48 | 11 | 61 | 79 | 45 | 11 | 8.0 | 61 | 11 |
getBounds |
61 | 79 | 62 | 48 | 11 | 61 | 62 | 45 | 11 | 8.0 | 61 | 11 |
p1 |
61 | 79 | 31Before Firefox 69, the default value ofp1 through p4 was undefined; now DOMQuadInit defines these as false. |
48 | 11 | 61 | 31Before Firefox for Android 79, the default value ofp1 through p4 was undefined; now DOMQuadInit defines these as false. |
45 | 11 | 8.0 | 61 | 11 |
p2 |
61 | 79 | 31Before Firefox 69, the default value ofp1 through p4 was undefined; now DOMQuadInit defines these as false. |
48 | 11 | 61 | 31Before Firefox for Android 79, the default value ofp1 through p4 was undefined; now DOMQuadInit defines these as false. |
45 | 11 | 8.0 | 61 | 11 |
p3 |
61 | 79 | 31Before Firefox 69, the default value ofp1 through p4 was undefined; now DOMQuadInit defines these as false. |
48 | 11 | 61 | 31Before Firefox for Android 79, the default value ofp1 through p4 was undefined; now DOMQuadInit defines these as false. |
45 | 11 | 8.0 | 61 | 11 |
p4 |
61 | 79 | 31Before Firefox 69, the default value ofp1 through p4 was undefined; now DOMQuadInit defines these as false. |
48 | 11 | 61 | 31Before Firefox for Android 79, the default value ofp1 through p4 was undefined; now DOMQuadInit defines these as false. |
45 | 11 | 8.0 | 61 | 11 |
toJSON |
61 | 79 | 62 | 48 | 11 | 61 | 62 | 45 | 11 | 8.0 | 61 | 11 |
worker_support |
61 | 79 | 69 | 48 | 11 | 61 | 79 | 45 | 11 | 8.0 | 61 | 11 |
© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/DOMQuad