The static DOMPoint method fromPoint() creates and returns a new mutable DOMPoint object given a source point. The source point is specified as a DOMPointInit-compatible object, which includes both DOMPoint and DOMPointReadOnly.

You can also create a new DOMPoint object using the new DOMPoint() constructor.

Although this interface is based on DOMPointReadOnly, it is not read-only; the properties within may be changed at will.


var point = DOMPoint.fromPoint(sourcePoint);


A DOMPointInit-compliant object, which includes both DOMPoint and DOMPointReadOnly, from which to take the values of the new point's properties.

Return value

A new DOMPoint object whose coordinate and perspective values are identical to those in the source point. The point's properties are mutable and may be changed at any time.


Creating a mutable point from a read-only point

If you have a DOMPointReadOnly object, you can easily create a mutable copy of that point:

var mutablePoint = DOMPoint.fromPoint(readOnlyPoint);

Creating a 2D point

This sample creates a 2D point, specifying an inline object that includes the values to use for x and y. The z and w properties are allowed to keep their default values (0 and 1 respectively).

var center = DOMPoint.fromPoint({x: 75, y: -50, z: -55, w: 0.25});


Specification Status Comment
Geometry Interfaces Module Level 1
The definition of 'fromPoint()' in that specification.
Candidate Recommendation Initial definition

Browser compatibility

Update compatibility data on GitHub
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidFirefox for AndroidOpera for AndroidSafari on iOSSamsung Internet
fromPoint() static functionChrome Full support 61Edge Full support 79Firefox Full support 62IE No support NoOpera Full support 48Safari Full support 10.1WebView Android Full support 61Chrome Android Full support 61Firefox Android Full support 62Opera Android Full support 45Safari iOS Full support 10.3Samsung Internet Android Full support 8.0


Full support  
Full support
No support  
No support