الاسم
ST_SetScale — تضبط حجم البكسلات في الاتجاهين X وY بوحدات النظام المرجعي للإحداثيات. عدد الوحدات لكل بكسل عرضًا/ارتفاعًا.
المختصر
raster ST_SetScale(raster rast, float8 xy);
raster ST_SetScale(raster rast, float8 x, float8 y);
الوصف
تضبط حجم البكسلات في الاتجاهين X وY بوحدات النظام المرجعي للإحداثيات. عدد الوحدات لكل بكسل عرضًا/ارتفاعًا. إذا مُرّرت وحدة واحدة فقط، يُفترض أن X وY لهما العدد نفسه.
|
|
|
تختلف ST_SetScale عن ST_Rescale في أن ST_SetScale لا تُعيد تشكيل الرستر ليطابق امتداده، بل تغيّر فقط البيانات الوصفية (أو الإسناد الجغرافي) للرستر لتصحيح مقياس حُدّد خطأً في الأصل. أما ST_Rescale فينتج عنها رستر بعرض وارتفاع مختلفين محسوبين ليلائما الامتداد الجغرافي للرستر المُدخَل. لا تعدّل ST_SetScale عرض الرستر ولا ارتفاعه. |
تغيّرت في: 2.0.0 في إصدارات WKTRaster كانت تُسمّى ST_SetPixelSize. وقد تغيّر ذلك في 2.0.0.
أمثلة
UPDATE dummy_rast
SET rast = ST_SetScale(rast, 1.5)
WHERE rid = 2;
SELECT ST_ScaleX(rast) As pixx, ST_ScaleY(rast) As pixy, Box3D(rast) As newbox
FROM dummy_rast
WHERE rid = 2;
pixx | pixy | newbox
------+------+----------------------------------------------
1.5 | 1.5 | BOX(3427927.75 5793244 0, 3427935.25 5793251.5 0)
UPDATE dummy_rast
SET rast = ST_SetScale(rast, 1.5, 0.55)
WHERE rid = 2;
SELECT ST_ScaleX(rast) As pixx, ST_ScaleY(rast) As pixy, Box3D(rast) As newbox
FROM dummy_rast
WHERE rid = 2;
pixx | pixy | newbox
------+------+--------------------------------------------
1.5 | 0.55 | BOX(3427927.75 5793244 0,3427935.25 5793247 0)