ST_MakeEmptyRaster — 返回给定尺寸(宽度)的空栅格(没有波段 & 高度)、左上角X和Y、像素大小和旋转(scalex、scaleY、skewx & Skewy)和参考系(SRID)。如果传入栅格,则返回具有相同大小、对齐和SRID的新栅格。如果省略sRID,则空间参考设置为未知(0)。
raster
ST_MakeEmptyRaster
(
raster
rast
)
;
raster
ST_MakeEmptyRaster
(
integer
width
, integer
height
, float8
upperleftx
, float8
upperlefty
, float8
scalex
, float8
scaley
, float8
skewx
, float8
skewy
, integer
srid=unknown
)
;
raster
ST_MakeEmptyRaster
(
integer
width
, integer
height
, float8
upperleftx
, float8
upperlefty
, float8
pixelsize
)
;
返回给定尺寸(宽度)的空栅格(没有波段 & 高度),并在空间(或世界)坐标中使用左上角X(左上角)、左上角Y(左上角)、像素大小和旋转(scalex、scaleY、skewx)进行地理配准 & Skewy)和参考系(SRID)。
最后一个版本使用单个参数来指定像素大小(PixelSize)。Scalex设置为该参数,scaleY设置为该参数的负值。Skewx和skewy设置为0。
如果传入现有栅格,它将返回具有相同元数据设置(不带标注栏)的新栅格。
如果未指定sRID,则默认为0。创建空栅格后,您可能想要向其添加带区,并可能对其进行编辑。参考 ST_AddBand 定义标注栏和 ST_SetValue 要设置初始像素值,请执行以下操作。
INSERT INTO dummy_rast(rid,rast)
VALUES(3, ST_MakeEmptyRaster( 100, 100, 0.0005, 0.0005, 1, 1, 0, 0, 4326) );
--use an existing raster as template for new raster
INSERT INTO dummy_rast(rid,rast)
SELECT 4, ST_MakeEmptyRaster(rast)
FROM dummy_rast WHERE rid = 3;
-- output meta data of rasters we just added
SELECT rid, (md).*
FROM (SELECT rid, ST_MetaData(rast) As md
FROM dummy_rast
WHERE rid IN(3,4)) As foo;
-- output --
rid | upperleftx | upperlefty | width | height | scalex | scaley | skewx | skewy | srid | numbands
-----+------------+------------+-------+--------+------------+------------+-------+-------+------+----------
3 | 0.0005 | 0.0005 | 100 | 100 | 1 | 1 | 0 | 0 | 4326 | 0
4 | 0.0005 | 0.0005 | 100 | 100 | 1 | 1 | 0 | 0 | 4326 | 0