ee.Geometry.coveringGrid

이 도형을 포함하는 기능 모음을 반환합니다. 각 기능은 지정된 투영으로 정의된 그리드의 직사각형입니다.

사용반환 값
Geometry.coveringGrid(proj, scale)FeatureCollection
인수유형세부정보
geometry도형결과는 이 영역과 교차하는 그리드 셀입니다.
proj투영그리드를 구성할 투영입니다. 'geometry'와 교차하는 각 그리드 셀에 대해 특성이 생성됩니다. 여기서 셀 모서리는 투영에서 정수 값 위치에 있습니다. 투영이 미터 단위로 조정되면 점은 실제 크기 지점에서 해당 크기의 그리드에 표시됩니다.
scale부동 소수점 수, 기본값: null제공된 경우 투영의 스케일을 재정의합니다. 투영이 아직 조정되지 않은 경우 필요할 수 있습니다.

코드 편집기(JavaScript)

// Define the coordinate reference system (CRS) to be used for grid alignment.
// WGS 84 / UTM zone 36S.
var epsg = 'EPSG:32736';

// Create a point geometry to serve as the center for the analysis.
var point = ee.Geometry.Point(31.6, -8.54);

Map.addLayer(point, {color: 'orange'}, 'Center');
Map.centerObject(point, 8);

// Create a circular buffer of 100,000 meters (100 km) around the point to
// define the study area.
var areaOfInterest = point.buffer(100000);
Map.addLayer(areaOfInterest, {color: 'purple'}, 'Area of interest');

// Calculate a scale value to determine the size of the grid cells.
// Use a power of 2 for best GeoTIFF tiling, e.g., assuming that we'll use the
// grid cell to define image export regions, 2**14 -> 16384.
var scale = Math.pow(2, 14);

// Generate a FeatureCollection of grid cells that covers the buffered area
// using the specified projection and scale.
var grid = areaOfInterest.coveringGrid({proj: epsg, scale: scale});
Map.addLayer(grid, {color: 'blue'}, 'Covering Grid', true, 0.5);

// Define the specific index string of the grid cell to be extracted.
var cellOfInterest = '18,551';
// Filter the grid collection to find the feature matching the index and
// retrieve it as an ee.Feature.
var feature =
    ee.Feature(grid.toList(10000)
                   .filter(ee.Filter.eq('system:index', cellOfInterest))
                   .get(0));
Map.addLayer(feature, {color: 'red'}, 'grid cell', true, 0.5);

// One common use of coveringGrid is to tile operations such as exports.
// This often involves iterating through grid cells on the client-side to
// submit tasks for each cell. Here we print each cell ID using evaluate().
print('Grid cell IDs:');
grid.aggregate_array('system:index').evaluate(function(cellIds) {
  cellIds.forEach(function(cellId) {
    print(cellId);
  });
});