名稱

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 坐標 (upperleftx)、左上角的 Y 坐標 (upperlefty)、像素大小和旋轉(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