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_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)
                

相关信息

ST_ScaleX, ST_ScaleY, Box3D