ee.Image.clipToBoundsAndScale

يتم قص صورة ضمن حدود شكل هندسي، وتغيير حجم الصورة المقصوصة إلى حجم أو مقياس معيّن.

الاستخدامالمرتجعات
Image.clipToBoundsAndScale(geometry, width, height, maxDimension, scale)صورة
الوسيطةالنوعالتفاصيل
هذا: inputصورةالصورة المطلوب قصها وتغيير حجمها
geometryGeometry, default: nullتمثّل هذه السمة الشكل الهندسي الذي سيتم اقتصاص الصورة منه. سيتم قص الصورة إلى مربّع الإحاطة، في إسقاط الصورة، لهذه الهندسة.
widthعدد صحيح، القيمة التلقائية: nullتمثّل هذه السمة عرض الصورة الذي سيتم تغيير حجمها إليه، بوحدة البكسل. يجب توفيرها مع "الارتفاع". يجب عدم استخدامها مع "maxDimension" و "scale".
heightعدد صحيح، القيمة التلقائية: nullتمثّل هذه السمة ارتفاع الصورة بعد تغيير حجمها، بوحدة البكسل. يجب توفيرها مع "العرض". يجب عدم استخدامها مع "maxDimension" و "scale".
maxDimensionعدد صحيح، القيمة التلقائية: nullالحد الأقصى لأبعاد الصورة التي سيتم تغيير حجمها إليها، بالبكسل يجب عدم استخدامها مع "العرض" و"الارتفاع" و "المقياس".
scaleالعدد العائم، القيمة التلقائية: nullفي حال تحديد المقياس، يتم تغيير حجم العرض عن طريق قسمة قيمة المقياس المحدّدة على الحجم الاسمي للمتر في عرض الصورة. يجب عدم استخدامها مع "العرض" و"الارتفاع" و "maxDimension".

أمثلة

محرّر الرموز البرمجية (JavaScript)

// A digital elevation model.
var dem = ee.Image('NASA/NASADEM_HGT/001');
var demVis = {bands: 'elevation', min: 0, max: 2000};
print('DEM', dem);
Map.setCenter(-121.38, 46.51, 8);
Map.addLayer(dem, demVis, 'DEM');

// Clip DEM by a single polygon geometry, specify width and height parameters.
var geom1 = ee.Geometry.BBox(-123.55, 46.61, -122.57, 46.98);
var demClip1 = dem.clipToBoundsAndScale({
  geometry: geom1,
  width: 20,  // pixels
  height: 10  // pixels
});
print('Clipped image retains metadata and band names', demClip1);
Map.addLayer(demClip1, demVis, 'Single geometry clip (width, height)');
Map.addLayer(geom1, {color: 'red'}, 'Single geometry (width, height)');

// Clip DEM by a single polygon geometry, specify maxDimension parameter.
var geom2 = ee.Geometry.BBox(-120.79, 46.58, -120.16, 46.81);
var demClip2 = dem.clipToBoundsAndScale({
  geometry: geom2,
  maxDimension: 5,  // pixels
});
Map.addLayer(demClip2, demVis, 'Single polygon clip (maxDimension)');
Map.addLayer(geom2, {color: 'yellow'}, 'Single polygon (maxDimension)');

// Clip DEM by a single polygon geometry, specify scale parameter.
var geom3 = ee.Geometry.BBox(-120.79, 46.18, -120.16, 46.41);
var demClip3 = dem.clipToBoundsAndScale({
  geometry: geom3,
  scale: 1e4,  // meters
});
Map.addLayer(demClip3, demVis, 'Single polygon clip (scale)');
Map.addLayer(geom3, {color: 'blue'}, 'Single polygon (scale)');

إعداد Python

راجِع صفحة بيئة Python للحصول على معلومات حول واجهة برمجة التطبيقات Python واستخدام geemap للتطوير التفاعلي.

import ee
import geemap.core as geemap

Colab (Python)

# A digital elevation model.
dem = ee.Image('NASA/NASADEM_HGT/001')
dem_vis = {'bands': 'elevation', 'min': 0, 'max': 2000}
display('DEM', dem)
m = geemap.Map()
m.set_center(-121.38, 46.51, 8)
m.add_layer(dem, dem_vis, 'DEM')

# Clip DEM by a single polygon geometry, specify width and height parameters.
geom_1 = ee.Geometry.BBox(-123.55, 46.61, -122.57, 46.98)
dem_clip_1 = dem.clipToBoundsAndScale(geometry=geom_1, width=20, height=10)
display('Clipped image retains metadata and band names', dem_clip_1)
m.add_layer(dem_clip_1, dem_vis, 'Single geometry clip (width, height)')
m.add_layer(geom_1, {'color': 'red'}, 'Single geometry (width, height)')

# Clip DEM by a single polygon geometry, specify maxDimension parameter.
geom_2 = ee.Geometry.BBox(-120.79, 46.58, -120.16, 46.81)
dem_clip_2 = dem.clipToBoundsAndScale(geometry=geom_2, maxDimension=5)
m.add_layer(dem_clip_2, dem_vis, 'Single polygon clip (maxDimension)')
m.add_layer(geom_2, {'color': 'yellow'}, 'Single polygon (maxDimension)')

# Clip DEM by a single polygon geometry, specify scale parameter.
geom_3 = ee.Geometry.BBox(-120.79, 46.18, -120.16, 46.41)
dem_clip_3 = dem.clipToBoundsAndScale(geometry=geom_3, scale=1e4)
m.add_layer(dem_clip_3, dem_vis, 'Single polygon clip (scale)')
m.add_layer(geom_3, {'color': 'blue'}, 'Single polygon (scale)')
m