AI-generated Key Takeaways
-
buffer()
returns a modified Geometry by expanding or contracting the input MultiPolygon based on a specified distance. -
A positive distance expands the geometry while a negative distance contracts it.
-
The buffering can be performed using either meters (default) or a projected coordinate system if
proj
is specified. -
An optional
maxError
parameter controls the accuracy of the buffering operation.
Usage | Returns |
---|---|
MultiPolygon.buffer(distance, maxError, proj) | Geometry |
Argument | Type | Details |
---|---|---|
this: geometry | Geometry | The geometry being buffered. |
distance | Float | The distance of the buffering, which may be negative. If no projection is specified, the unit is meters. Otherwise the unit is in the coordinate system of the projection. |
maxError | ErrorMargin, default: null | The maximum amount of error tolerated when approximating the buffering circle and performing any necessary reprojection. If unspecified, defaults to 1% of the distance. |
proj | Projection, default: null | If specified, the buffering will be performed in this projection and the distance will be interpreted as units of the coordinate system of this projection. Otherwise the distance is interpereted as meters and the buffering is performed in a spherical coordinate system. |
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]]]]); // Apply the buffer method to the MultiPolygon object. var multiPolygonBuffer = multiPolygon.buffer({'distance': 100}); // Print the result to the console. print('multiPolygon.buffer(...) =', multiPolygonBuffer); // Display relevant geometries on the map. Map.setCenter(-122.085, 37.422, 15); Map.addLayer(multiPolygon, {'color': 'black'}, 'Geometry [black]: multiPolygon'); Map.addLayer(multiPolygonBuffer, {'color': 'red'}, 'Result [red]: multiPolygon.buffer');
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]]], ]) # Apply the buffer method to the MultiPolygon object. multipolygon_buffer = multipolygon.buffer(distance=100) # Print the result. display('multipolygon.buffer(...) =', multipolygon_buffer) # 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( multipolygon_buffer, {'color': 'red'}, 'Result [red]: multipolygon.buffer' ) m