ภาพรวมเรขาคณิต

Earth Engine จัดการข้อมูลเวกเตอร์ด้วยประเภท Geometry ข้อกำหนด GeoJSON อธิบายรายละเอียดประเภทเรขาคณิตที่ Earth Engine รองรับ ซึ่งรวมถึง Point (รายการพิกัดในการฉายภาพบางรูปแบบ), LineString (รายการจุด), LinearRing (LineString แบบปิด) และ Polygon (รายการ LinearRing โดยที่รายการแรกเป็นเปลือกหอยและวงแหวนต่อๆ ไปคือรู) Earth Engine ยังรองรับ MultiPoint, MultiLineString และ MultiPolygon ด้วย ระบบยังรองรับ GeometryCollection ของ GeoJSON ด้วย แม้ว่าจะมีชื่อเป็น MultiGeometry ภายใน Earth Engine

การสร้างออบเจ็กต์เรขาคณิต

คุณสร้างเรขาคณิตแบบอินเทอร์แอกทีฟได้โดยใช้เครื่องมือเรขาคณิตของเครื่องมือแก้ไขโค้ด ดูข้อมูลเพิ่มเติมได้ที่หน้าเครื่องมือแก้ไขโค้ดของ Earth Engine หากต้องการสร้าง Geometry แบบเป็นโปรแกรม ให้ระบุลิสต์พิกัดที่เหมาะสมให้กับคอนสตรคเตอร์ เช่น

เครื่องมือแก้ไขโค้ด (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() เช่น

เครื่องมือแก้ไขโค้ด (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);