O Earth Engine processa dados vetoriais com o tipo Geometry
. A
especificação do GeoJSON descreve em
detalhes o tipo de geometrias aceitas pelo Earth Engine, incluindo Point
(uma lista de coordenadas em alguma projeção), LineString
(uma lista de pontos),
LinearRing
(um LineString
fechado) e Polygon
(uma
lista de LinearRing
s em que o primeiro é um shell e os anéis subsequentes são
furos). O Earth Engine também oferece suporte a MultiPoint
, MultiLineString
e MultiPolygon
. A GeometryCollection do GeoJSON também é aceita, embora tenha o nome MultiGeometry
no Earth Engine.
Como criar objetos de geometria
É possível criar geometrias de forma interativa usando as ferramentas de geometria do editor de código. Consulte a página do editor de código do Earth Engine para mais informações. Para criar um Geometry
de forma programática, forneça ao
construtor as listas de coordenadas adequadas. Exemplo:
Editor de código (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]] ]);
Nos exemplos anteriores, a distinção entre um LineString
e um LinearRing
é que o LinearRing
é "fechado" por ter a mesma coordenada no início e no fim da lista.
Uma Geometry
individual pode consistir em várias geometrias. Para dividir uma
Geometry
de várias partes nas geometrias constituintes, use
geometry.geometries()
. Exemplo:
Editor de código (JavaScript)
// Create a multi-part feature. var multiPoint = ee.Geometry.MultiPoint([[-121.68, 39.91], [-97.38, 40.34]]); // Get the individual geometries as a list. var geometries = multiPoint.geometries(); // Get each individual geometry from the list and print it. var pt1 = geometries.get(0); var pt2 = geometries.get(1); print('Point 1', pt1); print('Point 2', pt2);