Extrai uma extensão espacial de um objeto raster e a retorna como um arquivo no formato BYTEA.
Sintaxe
setof record ST_AsDatasetFile(raster raster_obj,
box extent,
integer pyramidLevel default 0,
cstring bands default '',
cstring format default 'GTiff',
cstring create_option default '{}',
cstring process_option default '{}',
out ext cstring,
out data bytea);
Parâmetros
|
Parâmetro |
Descrição |
|
raster_obj |
Objeto raster de onde os dados serão extraídos. |
|
extent |
Bounding box da área a ser extraída. Por padrão, as coordenadas utilizam o sistema de coordenadas geográficas (GCS). |
|
pyramidLevel |
Nível de pirâmide para leitura. Os valores válidos começam em 0. Valor padrão: |
|
bands |
IDs das bandas a extrair. Os IDs válidos iniciam em 0. Especifique um intervalo ( |
|
format |
Formato do arquivo de saída. Para consultar os formatos suportados, consulte ST_RasterDrivers. Valor padrão: |
|
create_option |
String JSON com opções de criação para o dataset de saída. Os valores válidos correspondem ao campo |
|
process_option |
String JSON com opções de processamento. A opção |
|
ext (out) |
Extensão do arquivo dos dados retornados. Valores suportados: |
|
data (out) |
Conteúdo do arquivo no formato bytea. |
Observações de uso
O formato de saída deve ter suporte em um driver Ganos com
can_asfiledefinido comotrue. Para verificar os formatos suportados, chame ST_RasterDrivers.Por padrão, a função retorna até 100 MB de dados extraídos. Para ajustar esse limite, altere o tamanho do cache usando
ganos.raster.clip_max_buffer_size.Os valores válidos para
create_optionoriginam-se do campocreate_optionsna saída de ST_RasterDrivers.
Exemplos
Extraia uma extensão geográfica usando as configurações padrão:
SELECT ST_AsDatasetFile(raster_obj,
'(-180,-90), (0,0)'::Box)
FROM raster_table
WHERE id = 1;
Faça a extração de um nível específico de pirâmide:
SELECT ST_AsDatasetFile(raster_obj,
'(-180,-90), (0,0)'::Box,
1)
FROM raster_table
WHERE id = 1;
Selecione bandas específicas para extração:
SELECT ST_AsDatasetFile(raster_obj,
'(-180,-90), (0,0)'::Box,
1,
'0-2')
FROM raster_table
WHERE id = 1;
Salve os dados extraídos como um arquivo GIF:
SELECT ST_AsDatasetFile(raster_obj,
'(-180,-90), (0,0)'::Box,
1,
'0-2',
'GIF')
FROM raster_table
WHERE id = 1;
Defina o formato de arquivo e as opções de criação para os dados extraídos:
SELECT ST_AsDatasetFile(raster_obj,
'(-180,-90), (0,0)'::Box,
1,
'0-2',
'GTiff',
'{"blockxsize":256, "blockysize":256, "compress": "DEFLATE"}')
FROM raster_table
WHERE id = 1;
Utilize coordenadas de pixel para definir o bounding box:
SELECT ST_AsDatasetFile(raster_obj,
'(0,0), (100,100)'::Box,
1,
'0-2',
'GTiff',
'{}',
'{"rast_coord":"true"}')
FROM raster_table
WHERE id = 1;