מערכת 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);