Page Summary
-
The
closestPointmethod returns the point on the right input that is nearest to the left input. -
The method returns null if either input is empty.
-
Arbitrary points are returned if inputs are unbounded, either both or just one.
-
The method accepts optional
maxErrorandprojarguments for controlling the calculation.
| Usage | Returns |
|---|---|
Geometry.
closestPoint
(right, maxError
, proj
)
|
Object |
| Argument | Type | Details |
|---|---|---|
|
this:
left
|
Geometry | The geometry used as the left operand of the operation. |
right
|
Geometry | The geometry used as the right operand of the operation. |
maxError
|
ErrorMargin, default: null | The maximum amount of error tolerated when performing any necessary reprojection. |
proj
|
Projection, default: null | The projection in which to perform the operation. If not specified, the operation will be performed in a spherical coordinate system, and linear distances will be in meters on the sphere. |
Examples
Code Editor (JavaScript)
// Define a Geometry object. var geometry = ee . Geometry ({ 'type' : 'Polygon' , 'coordinates' : [[[ - 122.081 , 37.417 ], [ - 122.086 , 37.421 ], [ - 122.084 , 37.418 ], [ - 122.089 , 37.416 ]]] }); // Define other inputs. var inputGeom = ee . Geometry . Polygon ( [[[ - 122.068 , 37.418 ], [ - 122.068 , 37.416 ], [ - 122.064 , 37.416 ], [ - 122.064 , 37.418 ]]]); // Apply the closestPoints method to the Geometry objects. var closestPoints = ee . Dictionary ( geometry . closestPoints ({ 'right' : inputGeom , 'maxError' : 1 })); // Print the result to the console. print ( 'geometry.closestPoints(...) =' , closestPoints ); // There is also a one-sided API for convenience. var closestPointOnInputGeom = geometry . closestPoint ({ 'right' : inputGeom , 'maxError' : 1 }); print ( 'geometry.closestPoint(...) =' , closestPointOnInputGeom ); // Display relevant geometries on the map. Map . setCenter ( - 122.085 , 37.422 , 15 ); Map . addLayer ( geometry , { 'color' : 'black' }, 'Geometry [black]: geometry' ); Map . addLayer ( inputGeom , { 'color' : 'blue' }, 'Parameter [blue]: inputGeom' ); Map . addLayer ( closestPoints . getGeometry ( 'left' ), { 'color' : 'red' }, 'Result [red]: closestPointOnLeft' ); Map . addLayer ( closestPoints . getGeometry ( 'right' ), { 'color' : 'red' }, 'Result [red]: closestPointOnRight' );

