公告:所有在
2025 年 4 月 15 日之前注册使用 Earth Engine 的非商业项目都必须
验证是否符合非商业性质的资格条件,才能继续使用 Earth Engine。
ee.Geometry.Rectangle.difference
使用集合让一切井井有条
根据您的偏好保存内容并对其进行分类。
返回从“左侧”几何图形中减去“右侧”几何图形的结果。
用法 | 返回 |
---|
Rectangle.difference(right, maxError, proj) | 几何图形 |
参数 | 类型 | 详细信息 |
---|
此:left | 几何图形 | 用作运算左操作数的几何图形。 |
right | 几何图形 | 用作相应运算的右操作数的几何图形。 |
maxError | ErrorMargin,默认值:null | 执行任何必要的重新投影时可容忍的最大误差量。 |
proj | 投影,默认值:null | 执行操作的投影。如果未指定,则操作将在球面坐标系中执行,并且球面上的直线距离将以米为单位。 |
示例
代码编辑器 (JavaScript)
// Define a Rectangle object.
var rectangle = ee.Geometry.Rectangle(-122.09, 37.42, -122.08, 37.43);
// Define other inputs.
var inputGeom = ee.Geometry.BBox(-122.085, 37.415, -122.075, 37.425);
// Apply the difference method to the Rectangle object.
var rectangleDifference = rectangle.difference({'right': inputGeom, 'maxError': 1});
// Print the result to the console.
print('rectangle.difference(...) =', rectangleDifference);
// Display relevant geometries on the map.
Map.setCenter(-122.085, 37.422, 15);
Map.addLayer(rectangle,
{'color': 'black'},
'Geometry [black]: rectangle');
Map.addLayer(inputGeom,
{'color': 'blue'},
'Parameter [blue]: inputGeom');
Map.addLayer(rectangleDifference,
{'color': 'red'},
'Result [red]: rectangle.difference');
Python 设置
如需了解 Python API 和如何使用 geemap
进行交互式开发,请参阅
Python 环境页面。
import ee
import geemap.core as geemap
Colab (Python)
# Define a Rectangle object.
rectangle = ee.Geometry.Rectangle(-122.09, 37.42, -122.08, 37.43)
# Define other inputs.
input_geom = ee.Geometry.BBox(-122.085, 37.415, -122.075, 37.425)
# Apply the difference method to the Rectangle object.
rectangle_difference = rectangle.difference(right=input_geom, maxError=1)
# Print the result.
display('rectangle.difference(...) =', rectangle_difference)
# Display relevant geometries on the map.
m = geemap.Map()
m.set_center(-122.085, 37.422, 15)
m.add_layer(rectangle, {'color': 'black'}, 'Geometry [black]: rectangle')
m.add_layer(input_geom, {'color': 'blue'}, 'Parameter [blue]: input_geom')
m.add_layer(
rectangle_difference, {'color': 'red'}, 'Result [red]: rectangle.difference'
)
m
如未另行说明,那么本页面中的内容已根据知识共享署名 4.0 许可获得了许可,并且代码示例已根据 Apache 2.0 许可获得了许可。有关详情,请参阅 Google 开发者网站政策。Java 是 Oracle 和/或其关联公司的注册商标。
最后更新时间 (UTC):2025-07-26。
[null,null,["最后更新时间 (UTC):2025-07-26。"],[[["\u003cp\u003eReturns a Geometry representing the portion of the 'left' geometry that does not intersect with the 'right' geometry.\u003c/p\u003e\n"],["\u003cp\u003eAccepts a 'right' Geometry as input to define the area to subtract.\u003c/p\u003e\n"],["\u003cp\u003eOptionally allows specifying 'maxError' for reprojection tolerance and 'proj' for the operation's projection.\u003c/p\u003e\n"],["\u003cp\u003eIf 'proj' is not specified, the operation is performed in a spherical coordinate system with linear distances in meters.\u003c/p\u003e\n"]]],["The `difference` method subtracts a 'right' geometry from a 'left' geometry. It accepts the 'right' geometry, an optional `maxError` to control reprojection tolerance, and an optional `proj` to specify the projection. The method returns a new geometry representing the difference. Code examples in JavaScript and Python demonstrate defining a Rectangle and another geometry, applying the `difference` method, and displaying the original and resulting geometries on a map.\n"],null,["# ee.Geometry.Rectangle.difference\n\nReturns the result of subtracting the 'right' geometry from the 'left' geometry.\n\n\u003cbr /\u003e\n\n| Usage | Returns |\n|--------------------------------------------------------|----------|\n| Rectangle.difference`(right, `*maxError* `, `*proj*`)` | Geometry |\n\n| Argument | Type | Details |\n|--------------|----------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| this: `left` | Geometry | The geometry used as the left operand of the operation. |\n| `right` | Geometry | The geometry used as the right operand of the operation. |\n| `maxError` | ErrorMargin, default: null | The maximum amount of error tolerated when performing any necessary reprojection. |\n| `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. |\n\nExamples\n--------\n\n### Code Editor (JavaScript)\n\n```javascript\n// Define a Rectangle object.\nvar rectangle = ee.Geometry.Rectangle(-122.09, 37.42, -122.08, 37.43);\n\n// Define other inputs.\nvar inputGeom = ee.Geometry.BBox(-122.085, 37.415, -122.075, 37.425);\n\n// Apply the difference method to the Rectangle object.\nvar rectangleDifference = rectangle.difference({'right': inputGeom, 'maxError': 1});\n\n// Print the result to the console.\nprint('rectangle.difference(...) =', rectangleDifference);\n\n// Display relevant geometries on the map.\nMap.setCenter(-122.085, 37.422, 15);\nMap.addLayer(rectangle,\n {'color': 'black'},\n 'Geometry [black]: rectangle');\nMap.addLayer(inputGeom,\n {'color': 'blue'},\n 'Parameter [blue]: inputGeom');\nMap.addLayer(rectangleDifference,\n {'color': 'red'},\n 'Result [red]: rectangle.difference');\n```\nPython setup\n\nSee the [Python Environment](/earth-engine/guides/python_install) page for information on the Python API and using\n`geemap` for interactive development. \n\n```python\nimport ee\nimport geemap.core as geemap\n```\n\n### Colab (Python)\n\n```python\n# Define a Rectangle object.\nrectangle = ee.Geometry.Rectangle(-122.09, 37.42, -122.08, 37.43)\n\n# Define other inputs.\ninput_geom = ee.Geometry.BBox(-122.085, 37.415, -122.075, 37.425)\n\n# Apply the difference method to the Rectangle object.\nrectangle_difference = rectangle.difference(right=input_geom, maxError=1)\n\n# Print the result.\ndisplay('rectangle.difference(...) =', rectangle_difference)\n\n# Display relevant geometries on the map.\nm = geemap.Map()\nm.set_center(-122.085, 37.422, 15)\nm.add_layer(rectangle, {'color': 'black'}, 'Geometry [black]: rectangle')\nm.add_layer(input_geom, {'color': 'blue'}, 'Parameter [blue]: input_geom')\nm.add_layer(\n rectangle_difference, {'color': 'red'}, 'Result [red]: rectangle.difference'\n)\nm\n```"]]