Returns true if and only if the geometries are within a specified distance.
Usage | Returns | MultiPolygon.withinDistance(right, distance, maxError, proj) | Boolean |
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. |
distance | Float | The distance threshold. If a projection is specified, the distance is in units of that projected coordinate system, otherwise it is in meters. |
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 MultiPolygon object.
var multiPolygon = ee.Geometry.MultiPolygon(
[[[[-122.092, 37.424],
[-122.086, 37.418],
[-122.079, 37.425],
[-122.085, 37.423]]],
[[[-122.081, 37.417],
[-122.086, 37.421],
[-122.089, 37.416]]]]);
// Define other inputs.
var inputGeom = ee.Geometry.Point(-122.090, 37.423);
// Apply the withinDistance method to the MultiPolygon object.
var multiPolygonWithinDistance = multiPolygon.withinDistance({'right': inputGeom, 'distance': 500, 'maxError': 1});
// Print the result to the console.
print('multiPolygon.withinDistance(...) =', multiPolygonWithinDistance);
// Display relevant geometries on the map.
Map.setCenter(-122.085, 37.422, 15);
Map.addLayer(multiPolygon,
{'color': 'black'},
'Geometry [black]: multiPolygon');
Map.addLayer(inputGeom,
{'color': 'blue'},
'Parameter [blue]: inputGeom');
Python setup
See the
Python Environment page for information on the Python API and using
geemap
for interactive development.
import ee
import geemap.core as geemap
Colab (Python)
# Define a MultiPolygon object.
multipolygon = ee.Geometry.MultiPolygon([
[[
[-122.092, 37.424],
[-122.086, 37.418],
[-122.079, 37.425],
[-122.085, 37.423],
]],
[[[-122.081, 37.417], [-122.086, 37.421], [-122.089, 37.416]]],
])
# Define other inputs.
input_geom = ee.Geometry.Point(-122.090, 37.423)
# Apply the withinDistance method to the MultiPolygon object.
multipolygon_within_distance = multipolygon.withinDistance(
right=input_geom, distance=500, maxError=1
)
# Print the result.
display('multipolygon.withinDistance(...) =', multipolygon_within_distance)
# Display relevant geometries on the map.
m = geemap.Map()
m.set_center(-122.085, 37.422, 15)
m.add_layer(
multipolygon, {'color': 'black'}, 'Geometry [black]: multipolygon'
)
m.add_layer(input_geom, {'color': 'blue'}, 'Parameter [blue]: input_geom')
m