Returns the convex hull of the given geometry. The convex hull of a single point is the point itself, the convex hull of collinear points is a line, and the convex hull of everything else is a polygon. Note that a degenerate polygon with all vertices on the same line will result in a line segment.
Usage | Returns | MultiLineString.convexHull(maxError, proj) | Geometry |
Argument | Type | Details | this: geometry | Geometry | Calculates the convex hull of this geometry. |
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 MultiLineString object.
var multiLineString = ee.Geometry.MultiLineString(
[[[-122.088, 37.418], [-122.086, 37.422], [-122.082, 37.418]],
[[-122.087, 37.416], [-122.083, 37.416], [-122.082, 37.419]]]);
// Apply the convexHull method to the MultiLineString object.
var multiLineStringConvexHull = multiLineString.convexHull({'maxError': 1});
// Print the result to the console.
print('multiLineString.convexHull(...) =', multiLineStringConvexHull);
// Display relevant geometries on the map.
Map.setCenter(-122.085, 37.422, 15);
Map.addLayer(multiLineString,
{'color': 'black'},
'Geometry [black]: multiLineString');
Map.addLayer(multiLineStringConvexHull,
{'color': 'red'},
'Result [red]: multiLineString.convexHull');
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 MultiLineString object.
multilinestring = ee.Geometry.MultiLineString([
[[-122.088, 37.418], [-122.086, 37.422], [-122.082, 37.418]],
[[-122.087, 37.416], [-122.083, 37.416], [-122.082, 37.419]],
])
# Apply the convexHull method to the MultiLineString object.
multilinestring_convex_hull = multilinestring.convexHull(maxError=1)
# Print the result.
display('multilinestring.convexHull(...) =', multilinestring_convex_hull)
# Display relevant geometries on the map.
m = geemap.Map()
m.set_center(-122.085, 37.422, 15)
m.add_layer(
multilinestring, {'color': 'black'}, 'Geometry [black]: multilinestring'
)
m.add_layer(
multilinestring_convex_hull,
{'color': 'red'},
'Result [red]: multilinestring.convexHull',
)
m