Présentation de la géométrie

Earth Engine gère les données vectorielles avec le type Geometry. La spécification GeoJSON décrit en détail les types de géométries compatibles avec Earth Engine, y compris Point (une liste de coordonnées dans une projection), LineString (une liste de points), LinearRing (un LineString fermé) et Polygon (une liste de LinearRing où le premier est une coque et les anneaux suivants sont des trous). Earth Engine est également compatible avec MultiPoint, MultiLineString et MultiPolygon. La collection de géométries GeoJSON est également prise en charge, bien qu'elle porte le nom MultiGeometry dans Earth Engine.

Créer des objets Geometry

Vous pouvez créer des géométries de manière interactive à l'aide des outils de géométrie de l'éditeur de code. Pour en savoir plus, consultez la page de l'éditeur de code Earth Engine. Pour créer un Geometry par programmation, fournissez au constructeur la ou les listes de coordonnées appropriées. Exemple :

Éditeur de code (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]]
]);

Dans les exemples précédents, notez que la distinction entre un LineString et un LinearRing est que le LinearRing est "fermé" en ayant la même coordonnée au début et à la fin de la liste.

Un Geometry individuel peut être constitué de plusieurs géométries. Pour diviser un Geometry multi-parties en géométries constituantes, utilisez geometry.geometries(). Exemple :

Éditeur de code (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);