この関数は、ラスターオブジェクトをクリップします。
構文
bytea ST_Clip(raster raster_obj,integer pyramidLevel, box extent, BoxType boxType);
bytea ST_Clip(raster raster_obj,integer pyramidLevel, box extent, BoxType boxType, integer destSrid);
record ST_Clip(raster raster_obj,
geometry geom,
integer pyramidLevel default 0,
cstring bands default '',
float8[] nodata default NULL,
cstring clipOption default '',
cstring storageOption default '',
out box outwindow,
out bytea rasterblob)
パラメーター
パラメーター | 説明 |
---|---|
raster_obj | ラスターオブジェクトです。 |
pyramidLevel | ピラミッドレベルです。 |
extent | クリップされる領域です。「((minX,minY),(maxX,maxY))」形式です。 |
boxType | クリップする領域の座標タイプです。 有効な値は以下のとおりです。
|
destSrid | 出力セルサブセットの空間参照系識別子 (SRID) です。 |
geometry | クリッピングに使用されるジオメトリーオブジェクトです。 |
bands | クリップするバンドのシーケンス番号です。「0-2」または「1,2,3」の形式です。 シーケンス番号は 0 から始まります。 デフォルト値は null 文字列 ('') です。 これは、すべてのバンドがクリップされることを示します。 |
nodata | float8 [] 形式の NoData 値の配列です。 NoData 値の数がクリップされるバンドの数よりも少ない場合、バンドの事前定義された NoData 値を使用して、バンドがクリップされた後に領域を塗りつぶします。 バンドに事前定義された NoData 値がない場合、バンドがクリップされた後、値 0 が領域の塗りつぶしに使用されます。 |
clipOption | クリッピングオプションです。 値は JSON 形式の文字列です。 |
出力のストレージオプションです。 値は JSON 形式の文字列です。 |
次の表は clipOption のパラメーターを示します。
パラメーター | 型 | デフォルト値 | 説明 |
---|---|---|---|
window_clip | Boolean | false | ジオメトリーオブジェクトのバウンディングボックスを使用してラスターオブジェクトをクリップするかどうかを指定します。 有効な値は以下のとおりです。
|
rast_coord | Boolean | false | クリップするジオメトリーがラスター座標であるかどうかです。 true の場合、ジオメトリーの x 座標は列番号を表し、y 座標は行番号を表します。 |
次の表は storageOption のパラメーターを示します。
パラメーター | 型 | デフォルト値 | 説明 |
---|---|---|---|
compression | String | lz4 | 圧縮アルゴリズムのタイプです。 有効な値は以下のとおりです。
|
quality | Integer | 75 | 圧縮品質です。 このパラメーターは、compression パラメーターの値が jpeg に設定されている場合にのみ有効です。 |
interleaving | String | 元のラスターオブジェクトと同じ | インターリーブタイプです。 有効な値は以下のとおりです。
|
endian | String | 元のラスターオブジェクトと同じ | エンディアン形式です。 有効な値は以下のとおりです。
|
説明
デフォルトのクリッピングキャッシュは 100 MB です。これは、100 MB のデータのみが返されることを示しています。 出力サイズの制限を調整するには、ganos.raster.clip_max_buffer_size パラメーターを使用してキャッシュのサイズを設定します。
例
Select ST_Clip(raster_obj, 0, '((128.980,30.0),(129.0,30.2))', 'World');
Select ST_Clip(raster_obj, 0, '((128.980,30.0),(129.0,30.2))', 'World', 4326);
-- Use a geometry object to clip a raster object.
-- Use the default clipping settings.
SELECT (ST_CLIP(rast, ST_geomfromtext('Polygon((0 0, 45 45, 90 45, 45 0, 0 0))', 4326), 0)).* from clip_table where id =1
-- Use white as the background color and compress the output into a PNG image.
SELECT (ST_CLIP(rast, ST_geomfromtext('Polygon((0 0, 45 45, 90 45, 45 0, 0 0))', 4326), 0, '', ARRAY[254,254,254], '', '{"compression":"png","interleaving":"bip"}')).* from clip_table where id =1;
-- Use the window of a geometry object to clip a raster object.
SELECT (ST_CLIP(rast, ST_geomfromtext('Polygon((0 0, 45 45, 90 45, 45 0, 0 0))', 4326), 0, '', NULL, '{"window_clip":true}', '')).* from clip_table where id =1;