ee.Geometry.contains

  • The contains method determines if one geometry completely encloses another, returning true if it does and false otherwise.

  • It takes a 'right' geometry as input, along with optional 'maxError' for reprojection tolerance and 'proj' for specifying the projection.

  • The operation is performed in spherical coordinates with distances in meters on the sphere if no projection is specified.

  • Examples are provided in JavaScript, Python, and Colab to illustrate the usage and visualization of the contains method.

Returns true if and only if one geometry contains the other.

UsageReturns
Geometry.contains(right, maxError, proj)Boolean
ArgumentTypeDetails
this: leftGeometryThe geometry used as the left operand of the operation.
rightGeometryThe geometry used as the right operand of the operation.
maxErrorErrorMargin, default: nullThe maximum amount of error tolerated when performing any necessary reprojection.
projProjection, default: nullThe 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.BBox(-122.085, 37.415, -122.075, 37.425);

// Apply the contains method to the Geometry object.
var geometryContains = geometry.contains({'right': inputGeom, 'maxError': 1});

// Print the result to the console.
print('geometry.contains(...) =', geometryContains);

// 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');

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 Geometry object.
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.
input_geom = ee.Geometry.BBox(-122.085, 37.415, -122.075, 37.425)

# Apply the contains method to the Geometry object.
geometry_contains = geometry.contains(right=input_geom, maxError=1)

# Print the result.
display('geometry.contains(...) =', geometry_contains)

# Display relevant geometries on the map.
m = geemap.Map()
m.set_center(-122.085, 37.422, 15)
m.add_layer(geometry, {'color': 'black'}, 'Geometry [black]: geometry')
m.add_layer(input_geom, {'color': 'blue'}, 'Parameter [blue]: input_geom')
m