如何在 Google Earth Engine 中获取 LinearRing 中每个元素的长度

How can I get the length of each element in a LinearRing in Google Earth Engine

我在 Google Earth Engine 中使用 JavaScript(这两个都非常新)来获取建筑物每一侧的长度(从地图视图向下看)

首先,我在建筑物的周边画了一个LinearRing,它存储在变量rectangle中。我想提取 rectangle 中每一行的长度并打印所有这些。

目前我的代码如下:

var rectangle = /* color: ffffff */ee.Geometry.LinearRing(
    [[coord_1],
     [coord_2],
     [coord_3],
     [coord_4],
     [coord_1]]);

var geometries = rectangle.geometries();
var line1 = geometries.get(0); 
var line2 = geometries.get(1);
print(line2)

这给我一个错误:

ComputedObject (Error)
List.get: List index must be between -1 and 0.  Found 1.

var rectangle GEE 中转换后的 JS 代码如下所示,供参考:

var rectangle: LinearRing, 5 vertices
  type: LinearRing
  coordinates: List (5 elements)
    0: [coord_1]
    1: [coord_2]
    2: [coord_3]
    3: [coord_4]
    4: [coord_1]

谢谢!

尝试在矩形上调用 .coordinates() 而不是 .geometries()

如果您有一个 FeatureCollection,.geometries() 将为您提供该集合中所有要素的几何图形,而 .coordinates() returns 将为您提供单个几何图形的坐标。