定义
ST_PixelData 构造函数用于创建 ST_PixelData 对象。
语法
Oracle
sde.st_pixeldata() sde.st_pixeldata(width INTEGER, height INTEGER, numBands INTEGER, parameter_list VARCHAR2)
PostgreSQL
sde.st_pixeldata() st_pixeldata(width IN INT, height IN INT, numBands IN INT, parameter_list IN TEXT)
SQL Server
<sde or dbo>.ST_Pixeldata::construct(width IN INTEGER, height IN INTEGER, numBands IN INTEGER, parameter_list IN NVARCHAR)
返回值
Oracle
数值
PostgreSQL
整型
SQL Server
整型
参数
参数 | 描述 |
---|---|
宽度 | 像素数据缓冲区的像素宽度 |
高度 | 像素数据缓冲区的像素高度 |
numBands | 要创建的波段数 |
parameter_list | 用单引号括起来且以逗号分隔的参数列表可以包含以下参数: pixelType=[{1bit | 4bit | uint8 | int8 | uint16 | int16 | uint32 | int32 | float | double}, interleave={separate | contiguous}] |
示例
下面的语句用于创建一张表并向表中插入一个 ST_PixelData 对象。
Oracle
CREATE TABLE foo (image sde.st_raster);
BEGIN
sde.ST_RasterUtil.initialize ('foo','image',4326,'DEFAULTS');
END;
/
DECLARE
p sde.ST_PixelData := sde.ST_PixelData(256, 256, 1, 'pixelType=uint8');
BEGIN
INSERT INTO FOO VALUES (p);
END;
/
PostgreSQL
CREATE TABLE foo (image st_raster);
SELECT st_raster_util_initialize ('foo','image',4326,'DEFAULTS');
DROP FUNCTION IF EXISTS insert_pixeldata();
CREATE OR REPLACE FUNCTION insert_pixeldata()
RETURNS integer AS '
DECLARE p st_pixeldata;
BEGIN
INSERT INTO foo VALUES (ST_RASTER(p));
END;'
LANGUAGE plpgsql;
SELECT insert_pixeldata();
DROP FUNCTION IF EXISTS insert_pixeldata();
SQL Server
CREATE TABLE foo (image st_raster);
EXECUTE ST_RASTER_UTIL.initialize
'myb','ted','foo','image',4326,NULL,'DEFAULTS'
DECLARE @p ST_Pixeldata;
SET @p = ST_Pixeldata::construct(256, 256, 1,'pixelType=uint8');
INSERT INTO foo VALUES
(ST_Raster::construct(NULL,@p,NULL));