Name

ST_SetScale — 以坐标参考系为单位设置像素的X和Y大小。数字单位/像素宽度/高度。

Synopsis

raster ST_SetScale(raster rast, float8 xy);

raster ST_SetScale(raster rast, float8 x, float8 y);

描述

以坐标参考系为单位设置像素的X和Y大小。数字单位/像素宽度/高度。如果只有一个单位传入,则假定X和Y是相同的数字。

[Note]

ST_SetScale不同于 ST_Rescale 在ST_SetScale中,不要重新采样栅格以匹配栅格范围。它仅更改栅格的元数据(或地理配准)以更正最初错误指定的比例。ST_RESERSCALE会导致计算出的栅格具有不同的宽度和高度,以适应输入栅格的地理范围。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)
                

另请参阅

ST_ScaleX, ST_ScaleY, Box3D