Google Earth Engine(GEE)——简单的几何处理和让你难懂的geometries()获取列表信息

2024-02-02 07:58:23 浏览数 (2)

Earth Engine 处理具有Geometry类型的矢量数据。在 以GeoJSON规范详细描述的几何形状由地球引擎所支持的类型,包括Point (坐标在一些投影列表), LineString(点的列表), LinearRing(封闭的LineString),和Polygon(列表LinearRingS其中第一个是壳和随后的环是孔)。地球引擎也支持MultiPointMultiLineStringMultiPolygon。也支持 GeoJSON GeometryCollection,尽管它MultiGeometry在地球引擎中具有名称。

geometries()

代码语言:javascript复制
返回 GeometryCollection 中的几何列表,或单个几何的几何单例列表。就是相当于你可以这样以表的形式去获取这里面的值,简单的记住这个功能就是让你回到集合的列表中

Returns the list of geometries in a GeometryCollection, or a singleton list of the geometry for single geometries.

Arguments:

this:geometry (Geometry)

Returns: List

创建几何对象

您可以使用代码编辑器几何工具以交互方式创建几何。有关更多信息,请参阅 地球引擎代码编辑器页面。要以Geometry编程方式创建一个,请为构造函数提供正确的坐标列表。例如:

代码语言:javascript复制
//加载一个点
var point = ee.Geometry.Point([1.5, 1.5]);
//根据坐标建立一条线
var lineString = ee.Geometry.LineString(
  [[-35, -10], [35, -10], [35, 10], [-35, 10]]);
//形成一个闭环的线
var linearRing = ee.Geometry.LinearRing(
  [[-35, -10], [35, -10], [35, 10], [-35, 10], [-35, -10]]);
//加载一个矩形
var rectangle = ee.Geometry.Rectangle([-40, -20, 40, 20]);
//加载一个多边形
var polygon = ee.Geometry.Polygon([
  [[-5, 40], [65, 40], [65, 60], [-5, 60], [-5, 60]]
]);

// 根据多点创建一个点元算集合
var multiPoint = ee.Geometry.MultiPoint([[-121.68, 39.91], [-97.38, 40.34]]);

// 获取单个几何图形作为列表。这里有一个难点就是就是这个geometries();
var geometries = multiPoint.geometries();

// 从列表中获取每个单独的几何图形并打印出来。
var pt1 = geometries.get(0);
var pt2 = geometries.get(1);
print('Point 1', pt1);
print('Point 2', pt2);

0 人点赞