סקירה כללית על גיאומטריה

מערכת Earth Engine מטפלת בנתוני וקטורים מסוג Geometry. במפרט GeoJSON מתוארים בפירוט סוגי הגיאומטריות שנתמכים ב-Earth Engine, כולל Point (רשימת קואורדינטות בתצוגה כלשהי), LineString (רשימת נקודות), LinearRing (LineString סגור) ו-Polygon (רשימת LinearRing, שבה הראשון הוא מעטפת והטבעות הבאות הן חורים). ב-Earth Engine יש תמיכה גם ב-MultiPoint, ב-MultiLineString וב-MultiPolygon. יש גם תמיכה ב-GeometryCollection של GeoJSON, אבל השם שלו ב-Earth Engine הוא MultiGeometry.

יצירת אובייקטים של Geometry

אפשר ליצור צורות גיאומטריות באופן אינטראקטיבי באמצעות הכלים הגיאומטריים של Code Editor. מידע נוסף זמין בדף של עורך הקוד של Earth Engine. כדי ליצור Geometry באופן פרוגרמטי, צריך לספק למבנה ה-constructor את הרשימות המתאימות של הקואורדינטות. לדוגמה:

Code Editor‏ (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]]
]);

בדוגמאות הקודמות, חשוב לשים לב להבדל בין LineString לבין LinearRing: ה-LinearRing הוא 'סגור' כי יש לו את אותה קואורדינטה בתחילת הרשימה ובסופה.

Geometry מסוים יכול להכיל כמה גיאומטריות. כדי לפצל Geometry שמכיל כמה חלקים לגיאומטריות המרכיבות אותו, משתמשים ב-geometry.geometries(). לדוגמה:

Code Editor‏ (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);